if (copy(edtbaodan.lines[i],length(edtbaodan.lines[i])-8,9)='newjb2day') then
begin
while (j<table3.fieldcount-1) do
begin
postion:=pos(',',str);
if j=table3.fieldcount-2 then
begin
if postion<>1 then
table3.fields[j].value :=copy(str,1,postion-1)
else
table3.fields[j].value:=null;
end else
if postion<>1 then
table3.fields[j].value:=copy(str,1,postion-1)
else
table3.fields[j].value:=null;
str:=copy(str,postion+1,(length(str)-postion));
j:=j+1;
end;//end while
table3.post;
i:=i+1;
end
else
break;
end; //end while i<edtbaodan.lines.Count
with querybaodan do
begin
close;
sql.Clear;
sql.Add('delete from T_newjb1 where tjrq in(select tjrq from NewJb1rj)');
execsql;//执行到这个地方的时候说表不存在T_newJb1是我在ORACLE下面建立的临时表,上面的table3也是连接的T_newjb1
下面的这两种临时表我都建立过但同样的出错,
我看网上的介绍是说被截断了,
那有什么其他办法吗?
ON COMMIT PRESERVE ROWS
ON COMMIT DELETE ROWS
sql.Clear ;
sql.add('insert into NewJb1rj select * from T_NewJb1Rj');
execsql;
close;
end;
begin
while (j<table3.fieldcount-1) do
begin
postion:=pos(',',str);
if j=table3.fieldcount-2 then
begin
if postion<>1 then
table3.fields[j].value :=copy(str,1,postion-1)
else
table3.fields[j].value:=null;
end else
if postion<>1 then
table3.fields[j].value:=copy(str,1,postion-1)
else
table3.fields[j].value:=null;
str:=copy(str,postion+1,(length(str)-postion));
j:=j+1;
end;//end while
table3.post;
i:=i+1;
end
else
break;
end; //end while i<edtbaodan.lines.Count
with querybaodan do
begin
close;
sql.Clear;
sql.Add('delete from T_newjb1 where tjrq in(select tjrq from NewJb1rj)');
execsql;//执行到这个地方的时候说表不存在T_newJb1是我在ORACLE下面建立的临时表,上面的table3也是连接的T_newjb1
下面的这两种临时表我都建立过但同样的出错,
我看网上的介绍是说被截断了,
那有什么其他办法吗?
ON COMMIT PRESERVE ROWS
ON COMMIT DELETE ROWS
sql.Clear ;
sql.add('insert into NewJb1rj select * from T_NewJb1Rj');
execsql;
close;
end;
不是临时表sql.add('insert into NewJb1rj select * from T_NewJb1Rj');
execsql;
程序的上半部分肯定没有问题,
只有执行到这个地方的时候才撒或表不存在
是不是在ORACLE下面,
一个临时表使用一次后就删除了里面的数据??
但不应该报表不存在啊
至少也是没有数据啊