各位高手: 我是初学者,做了一个窗体,上面有好多edit、dbedit,我输入内容后想将text中的东西保存到sql server中的数据库中的一个表中(追加一条记录),请问我如下所写是否正确:
我用了ADOconnection、ADOquery、datasource连接数据库(shbx2)
with ADOquery1 do
ADOquery1.close;
ADOquery1.SQL.Clear ;
ADOquery1.SQL.Add('insert into 补缴情况表',);
ADOquery1.SQL.Add('values('''+dbedit1.Text+''','''+edit6.Text+''',');
ADOquery1.SQL.Add(''''+edit2.Text+''','''+edit1.Text+''','''');
ADOquery1.ExecSQL;问题1:如上所写是否正确?一行中sql语句写不开时,换行写,上一行的最后是否需要“,”?
问题2:如果“补缴情况表”中有10个字段,而窗体中需要输入的只有5个字段,我保存
时values()只列出5个可以吗?还是必须全部列出?
谢谢
我用了ADOconnection、ADOquery、datasource连接数据库(shbx2)
with ADOquery1 do
ADOquery1.close;
ADOquery1.SQL.Clear ;
ADOquery1.SQL.Add('insert into 补缴情况表',);
ADOquery1.SQL.Add('values('''+dbedit1.Text+''','''+edit6.Text+''',');
ADOquery1.SQL.Add(''''+edit2.Text+''','''+edit1.Text+''','''');
ADOquery1.ExecSQL;问题1:如上所写是否正确?一行中sql语句写不开时,换行写,上一行的最后是否需要“,”?
问题2:如果“补缴情况表”中有10个字段,而窗体中需要输入的只有5个字段,我保存
时values()只列出5个可以吗?还是必须全部列出?
谢谢
2、列出5个就可以了————————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
————————————————————————————————————
var
SqlStr: string;
begin
SqlStr := format('insert into 补缴情况表 values('%s', '%s', '%s', '%s')',
[dbedit1.Text, edit6.Text,edit2.Text, edit1.Text]);
with AdoQuery1 do
begin
Close;
Sql.Text := SqlStr;
ExecSql;
end;
end;
问题2:如果数据表中的字段恰好为5个,可以不用列出Values,否则应该插入哪一个字段就要对应写上那一个字段
这个地方本来主观性相对就高一些,
在这里你想找到客观的基础知识?呵呵,地方不太对,
估计你在这问一下1+1=?
都会有很多种不同的答案呵呵,
with adoquery1 do
begin
close;
sql.clear;
sql.text := 'insert table1(field1,field2,field3,field4,field5)'+
'values(:1,:2,:3,:4,:5)';
parameters.parambyname('1').value := edit1.text;
.
.
.
parameters.parambyname('5').value := edit5.text;
execsql;
end;