Go homepage(回首页) Upload pictures (上传图片) Write articles (发文字帖)
The author:(作者)aaapublished in(发表于) 2014/7/19 0:09:38 delphi修改数据表中的信息
修改数据表中的信息1.用SQL语句UPDATE对数据表中的数据进行修改SQL语句UPDATE可以对数据进行单个修改,也可以对数据进行批量修改,只要在WHERE子句后面加上适当的条件即可。下面利用SQL语句UPDATE对数据表中的指定记录进行修改。操作步骤如下:(1)运行Delphi,在窗体中添加TADOConnection、TADOQuery、TDataSource、TButton、TDateTimePicker、TComboBox和TDBGrid等组件。(2)主要程序代码如下:with ADOQuery1 dobeginClose;SQL.Clear;SQL.Add('Update MR_Update SET Name= :A,DTime= :B,Sex= :C,Wage= :Dwhere Id='+Edit1.Text);Parameters.ParamByName('A').Value:=Edit2.Text;Parameters.ParamByName('B').Value:=DateToStr(DateTimePicker1.Date);Parameters.ParamByName('C').value:=ComboBox1.Text;Parameters.ParamByName('D').Value:=Edit3.Text;ExecSQL;end;2.用Edit方法对数据表中的数据进行修改对数据进行修改时,可以用TADOQuery组件的Edit方法对当前记录的信息进行修改,FieldByName方法所指定的字段类型必须与表中的字段类型相一致,并用Post方法保存修改后的信息。下面利用Edit方法对数据表中的当前记录进行修改。操作步骤如下:(1)运行Delphi,在窗体中添加TADOConnection、TADOQuery、TDataSource、TButton、TDateTimePicker、TComboBox和TDBGrid等组件。(2)主要程序代码如下:with ADOQuery1 dobeginClose;SQL.Clear;SQL.Add('Select Id as 编号,Name as 姓名,Sex as 性别,DTime as 工作时间,Wage as 工资 from MR_Update where id='+Edit1.Text);Open;Edit; //修改表中的记录FieldByName('姓名').AsString:=Edit2.Text;FieldByName('性别').AsString:=ComboBox1.Text;FieldByName('工作时间').AsDateTime:=DateTimePicker1.Date;FieldByName('工资').AsCurrency:=StrToInt(Edit3.Text);Post;end;3.批量修改数据对数据进行批量修改,主要是WHERE子句后面的条件范围,在使用年限对数据进行修改时,直接用日期进行计算,首先要获得年限,可以用YEAR( )函数来获取日期的年份,然后进行计算。如用YEAR(2006-12-1)-YEAR(1986-1-26)所得到的年限为20年。下面利用SQL语句UPDATE对数据进行批量修改。在获取工龄时,应用YEAR( )函数获取工作时间的年份和当前时间的年份,然后用当前年份减去工作年份,便可获得工龄。操作步骤如下:(1)运行Delphi,在窗体中添加TADOConnection、TADOQuery、TDataSource、TButton、和TDBGrid等组件。(2)主要程序代码如下:with ADOQuery1 dobeginClose;SQL.Clear;SQL.Add('Update MR_Update SET Wage= Wage+ :A where (year(getdate())-year(DTime))>'+Edit1.Text);Parameters.ParamByName('A').Value:=Edit2.Text;ExecSQL;end;
赞