求一個mysql存儲過程的語句寫法
create table t_A(id int primary key auto_increment,name varchar(20));
create table t_X(id int,score int);
CREATE DEFINER=`root`@`localhost` PROCEDURE `mypro`(in sname varchar(20),in score int,in tableName varchar(50))
BEGIN
insert into t_A(name) value (sname);
set @id=(select max(id) from t_A);
set @stmt = concat("insert into ",tableName," values(",@id,",",score,")");
prepare stmt from @stmt;
execute stmt;
END
mysql存儲過程中,打印語句是什么
Mysql存儲過程中沒有打印語句,可以用select 來代替,比如:
select @var;
select【si'lekt】,中文意思為選擇、挑選。這是一條計算機SQL數據庫中常用的函數,select語句是最常用的數據查詢語句。
如果給出了 LIMIT 或者 OFFSET 子句,那么 SELECT 語句只返回結果行的一個子集。
如果聲明了 FOR UPDATE 或者 FOR SHARE 子句, SELECT 語句對并發的更新鎖住選定的行。
你必須有 SELECT 權限用來從表中讀取數值。 使用 FOR UPDATE FOR SHARE 還要求 UPDATE 權限。
mysql 存儲過程 空語句怎么寫
delimiter
//
DROP TABLE if exists test
//
CREATE TABLE test(
id
int(11) NULL
)
//
/********************** 最簡單的一個存儲過程
drop procedure if exists
sp//
CREATE PROCEDURE
sp() select 1
//
call
sp()//
/********************* 帶輸入參數的存儲過程
MySQL 存儲過程 怎么實現 循環sql語句
delimiter $$
mysql>
mysql> CREATE PROCEDURE myProc() //創建while循環的存儲過程 if分支語句示例
-> BEGIN
->
-> DECLARE i int;
-> SET i=1;
-> loop1: WHILE i<=10 DO
-> IF MOD(i,2)<>0 THEN /*Even number - try again*/
-> SELECT CONCAT(i," is an odd number");
-> END IF;
-> SET i=i+1;
-> END WHILE loop1;
-> END$$
Query OK, 0 rows affected (0.00 sec)
這種也可以