|
@@ -60,7 +60,6 @@ type
|
|
|
procedure TestDblQuoteEscComments;
|
|
|
procedure TestInsertReturningQuery;
|
|
|
procedure TestOpenStoredProc;
|
|
|
- procedure TestOpenSpecialStatements;
|
|
|
|
|
|
procedure TestTemporaryTable;
|
|
|
procedure TestRefresh;
|
|
@@ -1261,49 +1260,6 @@ begin
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
-procedure TTestFieldTypes.TestOpenSpecialStatements;
|
|
|
-const CTE_SELECT = 'WITH a AS (SELECT * FROM FPDEV) SELECT * FROM a';
|
|
|
-type TTestStatements = array of string;
|
|
|
-var statements: TTestStatements;
|
|
|
- s: string;
|
|
|
-begin
|
|
|
- // tests non-select statements (other than "SELECT ..."), which return result-set
|
|
|
- // at least one row must be returned
|
|
|
- with TSQLDBConnector(DBConnector) do
|
|
|
- begin
|
|
|
- case SQLServerType of
|
|
|
- ssSQLite:
|
|
|
- statements := TTestStatements.Create('pragma table_info(FPDEV)');
|
|
|
- ssFirebird:
|
|
|
- statements := TTestStatements.Create(
|
|
|
- CTE_SELECT (*FB 2.1*),
|
|
|
- 'EXECUTE BLOCK RETURNS (U VARCHAR(255)) AS BEGIN SELECT rdb$get_context(''SYSTEM'',''CURRENT_USER'') FROM rdb$database INTO U; SUSPEND; END' (*FB 2.0*)
|
|
|
- );
|
|
|
- ssPostgreSQL:
|
|
|
- statements := TTestStatements.Create(CTE_SELECT, 'EXPLAIN '+CTE_SELECT);
|
|
|
- ssMSSQL:
|
|
|
- statements := TTestStatements.Create(CTE_SELECT (*MS SQL 2005*));
|
|
|
- ssMySQL:
|
|
|
- statements := TTestStatements.Create(
|
|
|
- 'check table FPDEV', // bug 14519
|
|
|
- 'show tables from '+Connection.DatabaseName // bug 16842
|
|
|
- )
|
|
|
- else
|
|
|
- Ignore(STestNotApplicable);
|
|
|
- end;
|
|
|
-
|
|
|
- for s in statements do
|
|
|
- begin
|
|
|
- Query.SQL.Text := s;
|
|
|
- Query.Open;
|
|
|
- AssertTrue(Query.FieldCount>0);
|
|
|
- AssertFalse('Eof after open', Query.Eof);
|
|
|
- Query.Next;
|
|
|
- Query.Close;
|
|
|
- end;
|
|
|
- end;
|
|
|
-end;
|
|
|
-
|
|
|
procedure TTestFieldTypes.TestClearUpdateableStatus;
|
|
|
// Test if CanModify is correctly disabled in case of a select query without
|
|
|
// a from-statement.
|