这是我用dephi7的simpledataset写的用于保存数据的语句,但是感觉好像套路不对。因为即使在主键重复的情况下运行程序也会提示数据保存成功。在编辑环境下运行,会提示错误信息,但也会提示数据保存成功的信息。
你们一般用什么方法写的?procedure TInforDetailInputForm.bbtnSaveClick(Sender: TObject);
var
i:integer;
begin
if OperType='insert' then
Begin
simpleDataSet1.FieldByName('XH').AsString := XH;
end;
if simpleDataSet1.State in[dsInsert,dsEdit] then
begin
try
simpleDataSet1.Post;
except
raise exception.Create('数据保存出错!');
end;
end;
if (simpleDataSet1.ChangeCount > 0) then
begin
simpleDataSet1.ApplyUpdates(-1);
Application.MessageBox('数据保存成功!','提示');
end;
close; //关闭窗体end;
你们一般用什么方法写的?procedure TInforDetailInputForm.bbtnSaveClick(Sender: TObject);
var
i:integer;
begin
if OperType='insert' then
Begin
simpleDataSet1.FieldByName('XH').AsString := XH;
end;
if simpleDataSet1.State in[dsInsert,dsEdit] then
begin
try
simpleDataSet1.Post;
except
raise exception.Create('数据保存出错!');
end;
end;
if (simpleDataSet1.ChangeCount > 0) then
begin
simpleDataSet1.ApplyUpdates(-1);
Application.MessageBox('数据保存成功!','提示');
end;
close; //关闭窗体end;
解决方案 »
- 请问如果用dspack或者DirectShow播放在线mp3文件呢?
- 关于delphi版本的问题
- 在DBGrid中怎么让指针指向的一条记录背景色变成指定的颜色呢?
- rvdatasetconnection控件的问题?在线等待!!
- 我想做一个类似于金山毒霸自动升级的功能,应该怎么做?来者有分
- 很简单一个问题。
- 怎样把后台程序放到前台?
- 查询满足多个条件的记录?
- TListView的问题! Help me!
- 根据IP,如何获得该IP的网络名?
- (菜鸟问题)treeview的一个node用edittext以后怎么样获取修改后的text?
- 请各位高手介绍几本网络编程 For Delphi的好书给我,实在没有头绪,谢谢了!
s.TransactionID := 1
s.TrancactLevel := xilREADCOMMITTED;
SQLConnection.StartTransaction(s);
try
if SimpleDataSet1.ChangeCount>0 then
SimpleDataSet1.ApplyUpdates(0);
SQLConnection.Commit(s);
except
ShowMessage('数据保存出错!');
SQLConnection.Rollback(s);
end;