帮我看看这个存储过程为啥只能增加一条记录
发布网友
发布时间:2022-10-13 02:25
我来回答
共2个回答
热心网友
时间:2023-10-27 07:11
同学你好!
你这个问题实现的逻辑并没有任何问题,是书写规范的错误。
产生错误的原因:
@xingbie varchar 这样书写是错误的,应改成
@xingbie varchar(2) ,即加上数据类型长度。
规范完代码后运行就正确了。
规范代码如下:
drop proc proc_insertxuesheng
CREATE PROCEDURE proc_insertxuesheng @xuehao int,@xingming varchar(20),@banji varchar(20),@zhuanye varchar(20),@nianling int,@xingbie varchar(2)
AS
insert stu
values(@xuehao,@xingming,@banji,@zhuanye,@nianling,@xingbie)
GO
exec proc_insertxuesheng @xuehao=100,@xingming='速度',@banji='五班',@zhuanye='软件',@nianling=15,@xingbie='男'
总结:
1,建议你建库,表等字段名(列名)都用英文
2,存储过程声明变量的数据类型请写上长度(应和建表时定义的长度相匹配)
3,调用存储过程给列赋值时,请将字符串型数据加单引号
以后要细心哦~祝你学习顺利!
如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!
vaela
热心网友
时间:2023-10-27 07:11
答案:穿上袜子、穿上鞋子、再绑上鞋带,