mysql - 在 MySQL 中创建过程来插入数据的正确语法是什么?

标签 mysql stored-procedures

我正在尝试编写一个存储过程来将数据插入表中。

我写的程序是:

CREATE PROCEDURE insrtem (IN x int(3),IN y varchar(3))

BEGIN

    insert into emp (empid,empname) values (x,y);
END;

但它不起作用。

正确的语法是什么?

最佳答案

在MySQL中,你经常需要一个delimiter语句,所以这是我的第一个猜测:

DELIMITER $$
CREATE PROCEDURE insrtem (IN in_x signed, IN in_y varchar(3))
BEGIN
    insert into emp (empid, empname)
        values (in_x, in_y);
END;
DELIMITER ;

请注意,我将参数名称更改为具有 in 前缀。这有助于区分参数与表中的列。

关于mysql - 在 MySQL 中创建过程来插入数据的正确语法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28910788/

相关文章:

c# - 在存储过程中将 nvarchar 数据类型转换为 datetime 数据类型

mysql - Haskell 目标架构

php - Android JSON 和 php

java - 读取文本文件并将输出插入到mysql表中

C++ 在调用函数时发生奇怪的崩溃

mysql - 当前面的行的总和达到阈值后,如何更新后面的行? MySQL

php - 从最后插入的行获取最后插入的 id

mysql - 允许在程序中授予权限吗?

sql-server - 无法批量加载,因为无法打开文件。操作系统错误代码 3

sql - 查找表中所有数值变量的均值、标准差、百分位数