ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/trunk/fbintf/testsuite/Test4.pas
(Generate patch)

Comparing ibx/trunk/fbintf/testsuite/Test4.pas (file contents):
Revision 47 by tony, Mon Jan 9 15:31:51 2017 UTC vs.
Revision 265 by tony, Sat Dec 8 11:22:27 2018 UTC

# Line 1 | Line 1
1   unit Test4;
2 + {$IFDEF MSWINDOWS}
3 + {$DEFINE WINDOWS}
4 + {$ENDIF}
5  
6 < {$mode objfpc}{$H+}
6 > {$IFDEF FPC}
7 > {$mode delphi}
8   {$codepage utf8}
9 + {$ENDIF}
10  
11   {Test 4: Update, Insert and Delete Queries}
12  
# Line 44 | Line 49 | type
49    private
50      procedure DoQuery(Attachment: IAttachment);
51    public
52 <    function TestTitle: string; override;
53 <    procedure RunTest(CharSet: string; SQLDialect: integer); override;
52 >    function TestTitle: AnsiString; override;
53 >    procedure RunTest(CharSet: AnsiString; SQLDialect: integer); override;
54    end;
55  
56  
# Line 68 | Line 73 | begin
73    Transaction.Rollback;
74    Transaction.Start(TARollback);
75  
76 <  Statement := Attachment.PrepareWithNamedParameters(Transaction,'Select * from EMPLOYEE Where EMP_NO = :EMP_NO',3);
76 >  Statement := Attachment.PrepareWithNamedParameters(Transaction,'Select * from EMPLOYEE Where EMP_NO = :F1',3);
77    Statement.EnableStatistics(true);
78 <  Statement.GetSQLParams.ByName('EMP_NO').AsInteger := 8;
78 >  Statement.GetSQLParams.ByName('F1').AsInteger := 8;
79    ReportResults(Statement);
80    if Statement.GetPerfStatistics(stats) then
81      WritePerfStats(stats);
# Line 111 | Line 116 | begin
116      ByName('EMP_NO').AsInteger := 151;
117      ByName('FIRST_NAME').AsString := 'Major';
118      ByName('PHONE_EXT').AsString := '';
119 <    ByName('HIRE_DATE').AsDateTime := EncodeDate(2015,4,1);;
119 >    ByName('HIRE_DATE').AsString :=  '2015-4-1';
120      ByName('DEPT_NO').AsString := '600';
121      ByName('JOB_CODE').AsString := 'Eng';
122      ByName('JOB_GRADE').AsInteger := 4;
123      ByName('JOB_COUNTRY').AsString := 'England';
124 <    ByName('SALARY').AsFloat := 40000.59;
124 >    ByName('SALARY').AsString := '40000.59';
125    end;
126    Statement.Execute;
127    WriteAffectedRows(Statement);
# Line 189 | Line 194 | begin
194    writeln(OutFile,'Same Statement - updated params');
195    Statement.GetSQLParams.ByName('EMP_NO').AsInteger := 9;
196    ReportResults(Statement);
197 +
198 +  writeln(outfile,'Test using Execute Block');
199 +
200 +  Transaction := Attachment.StartTransaction([isc_tpb_write,isc_tpb_nowait,isc_tpb_concurrency],taRollback);
201 +  Statement := Attachment.PrepareWithNamedParameters(Transaction,
202 +    'Execute Block (Hired Timestamp = :Hire_Date, empno integer = :EMP_NO) '+
203 +    'As Begin ' +
204 +    '  Update Employee Set Hire_Date = :Hired Where EMP_NO = :empno; '+
205 +    'End'
206 +    ,3);
207 +  Statement.GetSQLParams.ByName('Hire_Date').AsDateTime := EncodeDate(2015,1,31);;
208 +  Statement.GetSQLParams.ByName('EMP_NO').AsInteger := 8;
209 +  Statement.Execute;
210 +  WriteAffectedRows(Statement);
211 +  Statement := Attachment.PrepareWithNamedParameters(Transaction,'Select * from EMPLOYEE Where EMP_NO = :EMP_NO',3);
212 +  Statement.GetSQLParams.ByName('EMP_NO').AsInteger := 8;
213 +  ReportResults(Statement);
214 +
215   end;
216  
217 < function TTest4.TestTitle: string;
217 > function TTest4.TestTitle: AnsiString;
218   begin
219    Result := 'Test 4: Update, Insert and Delete Queries';
220   end;
221  
222 < procedure TTest4.RunTest(CharSet: string; SQLDialect: integer);
222 > procedure TTest4.RunTest(CharSet: AnsiString; SQLDialect: integer);
223   var Attachment: IAttachment;
224      DPB: IDPB;
225   begin

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines