DELIMITER $$ create procedure s_ins(in insno char(8), insname char(20), inssatus char(4),incity char(10)) begin INSERT into s values (insno,insname,inssatus ,incity ) end $$ delimiter ;这个存储过程错在哪呢?
时间: 2024-02-11 14:04:41 浏览: 96
SQL 存储过程 procedure 讲解+代码实例
这个存储过程有几个问题:
1. 在第一行代码中,缺少 `CREATE PROCEDURE` 关键字;
2. 在第一行代码中,参数 `in` 的位置错误;
3. INSERT INTO 语句的 VALUES 子句中,缺少括号;
4. 在最后一行代码中,应该使用 `END PROCEDURE` 替代 `END`。
下面是修改后的代码:
```
DELIMITER $$
CREATE PROCEDURE s_ins(IN insno CHAR(8), IN insname CHAR(20), IN inssatus CHAR(4), IN incity CHAR(10))
BEGIN
INSERT INTO s VALUES (insno, insname, inssatus, incity);
END PROCEDURE $$
DELIMITER ;
```
修改后的存储过程应该就没有问题了。
阅读全文