我是存储过程的新手,我不太了解。 我正在测试一个例子。你可以帮帮我吗? 这是我的存储过程
DELIMITER $$
DROP PROCEDURE IF EXISTS dictionarytable $$
CREATE PROCEDURE
dictionarytable
(id VARCHAR(20),name VARCHAR(20),工作VARCHAR(20),放置VARCHAR(20),mobileno VARCHAR(20),自行车VARCHAR(20),汽车VARCHAR(20),homeno VARCHAR(20),dictionaytype VARCHAR(20),意思是VARCHAR(20),句子 VARCHAR(20),反义词VARCHAR(20),同义词VARCHAR(20))BEGIN
选择 ID,姓名,工作地点,mobileno,自行车,汽车,homeno,dictionaytype,义,例句,反义词,同义词 来自字典INTO dictionarytable;结束$$
DELIMITER; 我希望在存储过程字典表中调用字典(表)中的id,name,13列 如果您指定查询以显示所有13列
,那么Begin中的查询是错误的答案 0 :(得分:1)
您不能将字段值传递给INTO过程,您可以将它们传递给INTO用户变量,声明变量或OUT参数。请注意,使用INTO子句时只能传递一条记录。例如:
SET @var1 = NULL;
SELECT column1 INTO @var1 FROM table;
如果要复制多条记录,则可以使用INSERT INTO...SELECT语句将数据集复制到第二个表。例如:
INSERT INTO table2 SELECT column1 FROM table;
此外,如果您想使用变量或参数作为标识符(在您的情况下为字段名称),那么您应该使用prepared statements。