我在Postgres数据库中使用Adoquery。
当我执行UPDATE或INSERT查询时,ExecSql或OPEN均应返回受影响的记录数,但始终为-1。
我使用psqlODBC的最新版本:09.01.0200。
码:
Adoquery1.close;
Adoquery1.SQL.Clear;
query := 'insert into testtabel (nummer, naam) values (3,''Barnsten'') ';
Adoquery1.SQL.Add(query ) ;
result := Adoquery1.ExecSql;
结果是-1
最佳答案
function PerformSQL(const ASQL: string): integer;
begin
Result := -1;
if ASQL <> '' then
begin
ZQuery1.SQL.Text := ASQL;
ZQuery1.ExecSQL;
Result := ZQuery1.RowsAffected;
end;
end;
ShowMessage
(IntToStr(PerformSQL('insert into test(te_id, te_code, te_name, te_type)' +
' VALUES(DEFAULT, 15, ''tezty68'', 1), (DEFAULT, 16, ''teztx75'', 1), (DEFAULT, 18, ''teztx89'', 1)')
));
还给我3。