我一直使用这样的脚本将数据插入到 delphi 7 中的表中
sql := 'INSERT INTO table_foo (field1,field2,field3) VALUES ('
+quotedstr('value1')
+','+quotedstr('value2')
+','+quotedstr('value3')
+')';
adoquery1.close;
adoquery1.sql.text := sql;
adoquery1.execsql;
但是我的一个朋友刚刚向我展示了另一种看起来更干净的方式,如下所示:
sql := 'SELECT * FROM table_foo';
adoquery1.close;
adoquery1.sql.text := sql;
adoquery1.open;
adoquery1.insert;
adoquery1.fieldbyname('field1').asstring := quotedstr('value1');
adoquery1.fieldbyname('field2').asstring := quotedstr('value2');
adoquery1.fieldbyname('field3').asstring := quotedstr('value3');
adoquery1.post;
这两种方法中哪一种更好(更快,更容易阅读/调试)?特别是当其中的数据table_foo
很大或需要填写更多字段时。