我是剛學delphi的,對數據庫語法不是很熟,現想用一個存儲過程來存一批數據,在數據庫中創建一個存儲過程,語法如下:
CREATE PROCEDURE pTempleteSave
AS
SET NOCOUNT ON
Begin tran
insert into tTempCell (fID,fProID,fDefID)
select fID,fProID,fDefID
if @@error<>0
begin
Rollback Tran
end
else
begin
Commit Tran
end
SET NOCOUNT OFF
上面語法是否有錯,在delphi中我將TADOStoredProc與此存儲過程關聯起來,現在我想將三個文本框的內容寫入數據庫,代碼要怎樣編寫。謝謝!
CREATE PROCEDURE pTempleteSave
AS
SET NOCOUNT ON
Begin tran
insert into tTempCell (fID,fProID,fDefID)
select fID,fProID,fDefID
if @@error<>0
begin
Rollback Tran
end
else
begin
Commit Tran
end
SET NOCOUNT OFF
上面語法是否有錯,在delphi中我將TADOStoredProc與此存儲過程關聯起來,現在我想將三個文本框的內容寫入數據庫,代碼要怎樣編寫。謝謝!
CREATE PROCEDURE pTempleteSave
(@fID char (20),
@fProID char (20),
@fDefID char (20)
)
AS
SET NOCOUNT ON
Begin tran
insert into tTempCell (fID,fProID,fDefID)
values( @fID, @fProID, @fDefID)
if @@error<>0
begin
Rollback Tran
end
else
begin
Commit Tran
end
SET NOCOUNT OFF
with adostoredproc1 do
begin
parameters.ParamByName('@fID).Value :=tid.Text;
parameters.ParamByName('@fProID).Value :=tproid.Text;
parameters.ParamByName('@fDefID).Value :=tdefid.Text;
end;這條語句要怎樣寫才能寫入到數據庫中
with ADOStoredProc1 do
begin
Close;
Parameters.Clear;
ProcedureName := 'Proc_SFMX_to_One;1';
Parameters.Add;
Parameters.Add;
Parameters.Add;
Parameters[0].Name := '@fID';
Parameters[1].Name := '@fProID';
Parameters[2].Name := '@fDefID';
Parameters.ParamByName('@fID').Value := value1;
Parameters.ParamByName('@fProID').Value := value2;
Parameters.ParamByName('@fDefID').Value := value3;
Open; //如果存储过程没有返回数据集,则用ExecProc;
end;