设计一个ACCESS数据库。现在想通过程序自动想A表中插入10万条任一数据。
数据表里没有主键。类型都是文本型
下面的SQL语句哪里有错。请指出。
var
i,j : integer;
str: string;
begin
for i:= 1 to 100000 do
begin
str := 'insert into A (A,A,A,A,A,A,A,A,A,A,A,A,A)';
with AdoQuery1 do
begin
sql.Clear;
sql.Add(str);
ExecSQL
end;
数据表里没有主键。类型都是文本型
下面的SQL语句哪里有错。请指出。
var
i,j : integer;
str: string;
begin
for i:= 1 to 100000 do
begin
str := 'insert into A (A,A,A,A,A,A,A,A,A,A,A,A,A)';
with AdoQuery1 do
begin
sql.Clear;
sql.Add(str);
ExecSQL
end;
谢谢指教
按这种格式去写啊!
A1,A2,A3..的格式串起来
fields := ''
fvalues := ''
for i := 1 to 100 do
begin
fiels := fiels+'A'+IntToStr+','
fvalues := fvalues + 随机字符 +',';
end;
str := 'Insert into('+copy(fields,1,length(fields)-1)+') values('+
copy(fields,1,length(fvalues)-1)+')'再执行str
str := 'insert into A (A,A,A,A,A,A,A,A,A,A,A,A,A)';
改为:
str := 'insert into A ('A','A','A','A','A','A','A','A','A','A','A','A','A')';
试试
将str := 'insert into A (A,A,A,A,A,A,A,A,A,A,A,A,A)'
改为str := 'insert into A (''A'',''A'',......,''A'')'就可以了呵呵。
做这个是领导要求先插入10万条数据,然后测试一下检索的速度。