菜鸟求救::::我怎样可以把同一个FORM中的多个数据分别存入3个数据表中:
比如我想pagecontrol中的三个page中的数据分别存入三个数据表,该怎样写语句啊?
我会存到一个单独的表中:
var
AdoQuery1:TAdoQuery;
begin
adoquery1:=TAdoQuery.Create(self);
adoquery1.Connection:=adoconnection1;
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('insert into MAIN ( 姓名,年龄,出生年月,性别,民族,政治面貌,婚否,原籍,身份证号,操作员,最后操作时间)values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,:s11 )');
adoquery1.Parameters.Clear;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[0].name:='s1';
adoquery1.Parameters[0].DataType:=ftstring;
adoquery1.Parameters[0].Direction:=pdinput;
adoquery1.Parameters[0].Value:=edit2.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[1].name:='s2';
adoquery1.Parameters[1].DataType:=ftstring;
adoquery1.Parameters[1].Direction:=pdinput;
adoquery1.Parameters[1].Value:=edit5.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[2].name:='s3';
adoquery1.Parameters[2].DataType:=ftdatetime;
adoquery1.Parameters[2].Direction:=pdinput;
adoquery1.Parameters[2].Value:=StrToDate(maskedit4.text);
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[3].name:='s4';
adoquery1.Parameters[3].DataType:=ftstring;
adoquery1.Parameters[3].Direction:=pdinput;
adoquery1.Parameters[3].Value:=combobox1.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[4].name:='s5';
adoquery1.Parameters[4].DataType:=ftstring;
adoquery1.Parameters[4].Direction:=pdinput;
adoquery1.Parameters[4].Value:=edit6.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[5].name:='s6';
adoquery1.Parameters[5].DataType:=ftstring;
adoquery1.Parameters[5].Direction:=pdinput;
adoquery1.Parameters[5].Value:=edit4.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[6].name:='s7';
adoquery1.Parameters[6].DataType:=ftstring;
adoquery1.Parameters[6].Direction:=pdinput;
adoquery1.Parameters[6].Value:=combobox2.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[7].name:='s8';
adoquery1.Parameters[7].DataType:=ftstring;
adoquery1.Parameters[7].Direction:=pdinput;
adoquery1.Parameters[7].Value:=edit7.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[8].name:='s9';
adoquery1.Parameters[8].DataType:=ftdatetime;
adoquery1.Parameters[8].Direction:=pdinput;
adoquery1.Parameters[8].Value:=StrToDate(maskedit4.text);
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[9].name:='s10';
adoquery1.Parameters[9].DataType:=ftstring;
adoquery1.Parameters[9].Direction:=pdinput;
adoquery1.Parameters[9].Value:=edit18.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[10].name:='s11';
adoquery1.Parameters[10].DataType:=ftdatetime;
adoquery1.Parameters[10].Direction:=pdinput;
adoquery1.Parameters[10].Value:=StrToDate(maskedit1.text);
adoquery1.ExecSQL;
adoquery1.Close;
可是不会将3个page中数据一次存到3个表中,请问能解决吗? 谢谢了, 请回复[email protected]
比如我想pagecontrol中的三个page中的数据分别存入三个数据表,该怎样写语句啊?
我会存到一个单独的表中:
var
AdoQuery1:TAdoQuery;
begin
adoquery1:=TAdoQuery.Create(self);
adoquery1.Connection:=adoconnection1;
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('insert into MAIN ( 姓名,年龄,出生年月,性别,民族,政治面貌,婚否,原籍,身份证号,操作员,最后操作时间)values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,:s11 )');
adoquery1.Parameters.Clear;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[0].name:='s1';
adoquery1.Parameters[0].DataType:=ftstring;
adoquery1.Parameters[0].Direction:=pdinput;
adoquery1.Parameters[0].Value:=edit2.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[1].name:='s2';
adoquery1.Parameters[1].DataType:=ftstring;
adoquery1.Parameters[1].Direction:=pdinput;
adoquery1.Parameters[1].Value:=edit5.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[2].name:='s3';
adoquery1.Parameters[2].DataType:=ftdatetime;
adoquery1.Parameters[2].Direction:=pdinput;
adoquery1.Parameters[2].Value:=StrToDate(maskedit4.text);
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[3].name:='s4';
adoquery1.Parameters[3].DataType:=ftstring;
adoquery1.Parameters[3].Direction:=pdinput;
adoquery1.Parameters[3].Value:=combobox1.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[4].name:='s5';
adoquery1.Parameters[4].DataType:=ftstring;
adoquery1.Parameters[4].Direction:=pdinput;
adoquery1.Parameters[4].Value:=edit6.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[5].name:='s6';
adoquery1.Parameters[5].DataType:=ftstring;
adoquery1.Parameters[5].Direction:=pdinput;
adoquery1.Parameters[5].Value:=edit4.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[6].name:='s7';
adoquery1.Parameters[6].DataType:=ftstring;
adoquery1.Parameters[6].Direction:=pdinput;
adoquery1.Parameters[6].Value:=combobox2.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[7].name:='s8';
adoquery1.Parameters[7].DataType:=ftstring;
adoquery1.Parameters[7].Direction:=pdinput;
adoquery1.Parameters[7].Value:=edit7.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[8].name:='s9';
adoquery1.Parameters[8].DataType:=ftdatetime;
adoquery1.Parameters[8].Direction:=pdinput;
adoquery1.Parameters[8].Value:=StrToDate(maskedit4.text);
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[9].name:='s10';
adoquery1.Parameters[9].DataType:=ftstring;
adoquery1.Parameters[9].Direction:=pdinput;
adoquery1.Parameters[9].Value:=edit18.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[10].name:='s11';
adoquery1.Parameters[10].DataType:=ftdatetime;
adoquery1.Parameters[10].Direction:=pdinput;
adoquery1.Parameters[10].Value:=StrToDate(maskedit1.text);
adoquery1.ExecSQL;
adoquery1.Close;
可是不会将3个page中数据一次存到3个表中,请问能解决吗? 谢谢了, 请回复[email protected]
解决方案 »
- 关于组件的选择
- delphi 可以用ADO连接Microsoft Access吗?
- DBGRID 控件,当ADODATASET的记录总数等于O时,DBGRID总是自动填充一条空行,怎么样让它不填充呢?
- 请教一个不打印0的问题
- 有没有释放指针的函数,帮忙找一找!
- Messagebox怎么用?
- delphi存取sqlserver数据库中二进制字段的问题
- delphi TDecompressionStream 压缩数据无法用c++ zlib解压
- 我想找关于用delphi编邮件发送软件的资料.
- 转载一篇文章,希望对怀疑Delphi的人有所帮助,至于你坚决不喜欢Delphi,随便
- 如何判断adoquery中哪几个字段被修改啦
- 【过年醒目】过年散分了,老朋友新朋友来接分啊【散分醒目】
//////////////////MAIN 换成另外的表名,后面的代码类似
AdoQuery1,AdoQuery2,AdoQuery3:TAdoQuery;
begin
adoquery1:=TAdoQuery.Create(self);
adoquery2:=TAdoQuery.Create(self);
adoquery3:=TAdoQuery.Create(self);
adoquery1.Connection:=adoconnection1;
adoquery2.Connection:=adoconnection1;
adoquery3.Connection:=adoconnection1;
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('insert into MAIN ( 姓名,年龄,出生年月,性别,民族,政治面貌,婚否,原籍,身份证号,操作员,最后操作时间)values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,:s11 )');
adoquery1.Parameters.ParamByName('s1').Value:=edit2.text;
adoquery1.Parameters.ParamByName('s2').Value:=edit5.text;
//.... adoquery2.close;
adoquery2.sql.clear;
adoquery2.sql.add('insert into 表2 ( 姓名,年龄,出生年月,性别,民族,政治面貌,婚否,原籍,身份证号,操作员,最后操作时间)values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,:s11 )');
adoquery2.Parameters.ParamByName('s1').Value:=edit2.text;
adoquery2.Parameters.ParamByName('s2').Value:=edit5.text;
//.... adoquery3.close;
adoquery3.sql.clear;
adoquery3.sql.add('insert into 表3 ( 姓名,年龄,出生年月,性别,民族,政治面貌,婚否,原籍,身份证号,操作员,最后操作时间)values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,:s11 )');
adoquery3.Parameters.ParamByName('s1').Value:=edit2.text;
adoquery3.Parameters.ParamByName('s2').Value:=edit5.text;
//....
//用事务控制数据完整性
adoconnection1.BeginTrans;
try
adoquery1.execsql;
adoquery2.execsql;
adoquery3.execsql;
adoconnection1.CommitTrans;
except
adoconnection1.RollbackTrans;
end;
var
SQLSTR:string;
begin
sqlstr:='insert into MAIN ( 姓名,年龄,出生年月,性别,民族,政治面貌,婚否,原籍,身份证号,操作员,最后操作时间)values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,:s11 )'+#13;
sqlstr.Parameters.ParamByName('s1').Value:=edit2.text;
sqlstr.Parameters.ParamByName('s2').Value:=edit5.text;
//.... sqlstr:=sqlstr+'insert into 表2 ( 姓名,年龄,出生年月,性别,民族,政治面貌,婚否,原籍,身份证号,操作员,最后操作时间)values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,:s11 )'+#13;
sqlstr.Parameters.ParamByName('s1').Value:=edit2.text;
sqlstr.Parameters.ParamByName('s2').Value:=edit5.text;
//.... sqlstr:=sqlstr+'insert into 表3 ( 姓名,年龄,出生年月,性别,民族,政治面貌,婚否,原籍,身份证号,操作员,最后操作时间)values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,:s11 )';
sqlstr.Parameters.ParamByName('s1').Value:=edit2.text;
sqlstr.Parameters.ParamByName('s2').Value:=edit5.text;
//....
//用事务控制数据完整性
adoconnection1.BeginTrans;
try
adoconection1.execute(sqlstr);
aoconnection1.CommitTrans;
except
adoconnection1.RollbackTrans;
end;