本人如下程序段,想通过从文框中取得输入的编码,确认后,进入代码表中查询是否有此编码,有则修改此条记录,无则添加此条记录。程序片断如下:
if (edit1.Text ='') or (edit2.Text='') then
begin
messagedlg('类别编码及名称不能为空',mtconfirmation,[mbOK],0);
edit1.SetFocus;
end;
dm_name:=edit1.Text;
with Data_use do //数据模块
其中:edit1对应产品编码
edit2对应产品名称
望您赐教,谢谢!
利用数据库存储过程进行编程,但我不知如何操作?能否告之具体点,
你能帮助我写出在SQL SERVER端的数据存储过程吗?
代码表名:CPFMBM
字段名1:CPBM C 3
字段名2:CPMC C 30
if (edit1.Text ='') or (edit2.Text='') then
begin
messagedlg('类别编码及名称不能为空',mtconfirmation,[mbOK],0);
edit1.SetFocus;
end;
dm_name:=edit1.Text;
with Data_use do //数据模块
其中:edit1对应产品编码
edit2对应产品名称
望您赐教,谢谢!
利用数据库存储过程进行编程,但我不知如何操作?能否告之具体点,
你能帮助我写出在SQL SERVER端的数据存储过程吗?
代码表名:CPFMBM
字段名1:CPBM C 3
字段名2:CPMC C 30
@p1 varchar(50);
@p2 varchar(50)
as
selcet * from cpfmbm where cpbm=@p1 and cpmc=@p2
CREATE proc proc_name1
@p1 varchar(50),--此处为“逗号“
@p2 varchar(50)
as
selcet * from cpfmbm where cpbm=@p1 and cpmc=@p2
with Query1 do
begin
Close;
SQL.Clear;
SQL.Add('Exec('+''''+Edit1.Text+''''+','+''''+Edit2.Text+'''');
ExecSQL
Close;
End;后台:
CREATE PROCEDURE Bes_Proc_Chn_CPFMBM
@Single_No varchar(50)
@Values varchar(50)
AS IF EXITS( Select * from CPFMBM where CPBM=@Single_No)
Update CPFMBM set CPMC=@Values
else
Insert into CPFMBM(CPBM,CPMC) values(@Single_No , @Values)
/*
在使用时请注意@Single_No 与@Values变量的定义,必须
与CPBM与CPMC类型相同,这里假设为Varchar类型
*/
CREATE PROCEDURE Bes_Proc_Chn_CPFMBM
@Single_No varchar(50)
@Values varchar(50)
AS IF EXITS( Select * from CPFMBM where CPBM=@Single_No)
Update CPFMBM set CPMC=@Values where CPBM=@Single_No
--不好意思忘了条件
else
Insert into CPFMBM(CPBM,CPMC) values(@Single_No , @Values)
/*
在使用时请注意@Single_No 与@Values变量的定义,必须
与CPBM与CPMC类型相同,这里假设为Varchar类型
*/