CREATE PROCEDURE UpdateData
(
@id int,
@personid int,
@pricelevel nvarchar(50),
@strachtype nvarchar(50),
@packuptype nvarchar(50),
@myphone1 nvarchar(50),
@name nvarchar(50),
@gender nvarchar(50),
@address nvarchar(50),
@city nvarchar(50),
@state nvarchar(50),
@zip nvarchar(50),
@email nvarchar(50),
@birthday nvarchar(50),
@remark nvarchar(50)
)
AS
UPDATE t_base_customer_info SET pricelevel = @pricelevel ,strachtype = @strachtype ,packuptype = @packuptype WHERE id = @id;
UPDATE t_base_person_info SET myphone1 = @myphone1,name = @name,gender = @gender,address = @address,city = @city,state = @state,zip = @zip,
email = @email,birthday = @birthday,remark = @remark WHERE id = @personid;
写了一个WinForm程序,但是现在有个问题,我用存储过程往数据库里提交数据,在提交完成之后,我就刷新了一下DataGridView,修改后的数据也显示在了DataGridView中,但是吧,数据库中的数据并没有修改,并且在关闭掉了窗口后,再打开窗口,数据还是没有修改,这是个什么原因?我写的存储过程有问题么?我在存储过程下面加了这句
raiserror(N'done is over ',16,1)
报了错误,但是我并没有找到错误,求大神指教
楼主在数据库测试下存储过程就知道是不是存储过程出问题了
EXEC UpdateData ....(参数)
如果在sqlserver里调用存储过程能添加上 那么就是winform那边的问题了,单步调试看值传的是不是有问题;
如果是存储过程的问题,sqlserver里也可以单步调试了,楼主多试试
你 DataGridView那边怎么写的,是不是没有保存。