0

テーブル名と値がストアド プロシージャでユーザーから渡されているテーブルにデータを挿入したいと考えています。

enter code here
mysql> DELIMITER //
mysql> CREATE PROCEDURE tableinsertion(IN tablename varchar(20),IN ano int(10))
-> BEGIN
-> SET @s=CONCAT('INSERT INTO ', tablename, 'values', (ano));
-> PREPARE stmt FROM @s;
-> EXECUTE stmt;
-> END //

次のように関数を呼び出しています CALL tableinsertion('account','110')// しかし、エラーが発生しています。

4

1 に答える 1

0

スペースがありません

SET @s=CONCAT('INSERT INTO ', tablename, 'values', (ano));
                                          ^-----^---here

クエリを生成する

INSERT INTO sometablevalues(ano)
于 2012-08-08T18:28:42.710 に答える