|
@@ -699,6 +699,10 @@ end;
|
|
|
|
|
|
|
|
|
procedure TTestFieldTypes.TestParamQuery;
|
|
|
+// Tests running insert queries using parameters
|
|
|
+const
|
|
|
+ DecoyFieldData1='decoytest';
|
|
|
+ DecoyFieldData2=':decoy ::test $decoy2 $$2';
|
|
|
begin
|
|
|
TSQLDBConnector(DBConnector).Connection.ExecuteDirect('create table FPDEV2 (FIELD1 INT, FIELD2 INT, FIELD3 INT, DECOY VARCHAR(30))');
|
|
|
|
|
@@ -713,7 +717,7 @@ begin
|
|
|
ExecSQL;
|
|
|
|
|
|
sql.clear;
|
|
|
- sql.append('insert into FPDEV2 (field1,field2,decoy) values (:field1,:field2,''decoytest'')');
|
|
|
+ sql.append('insert into FPDEV2 (field1,field2,decoy) values (:field1,:field2,'''+DecoyFieldData1+''')');
|
|
|
Params.ParamByName('field1').AsInteger := 2;
|
|
|
Params.ParamByName('field2').DataType := ftInteger;
|
|
|
Params.ParamByName('field2').Value := Null;
|
|
@@ -727,7 +731,7 @@ begin
|
|
|
ExecSQL;
|
|
|
|
|
|
sql.clear;
|
|
|
- sql.append('insert into FPDEV2 (field1,field2,field3,decoy) values (:field1,:field2,:field3,'':decoy ::test $decoy2 $$2'')');
|
|
|
+ sql.append('insert into FPDEV2 (field1,field2,field3,decoy) values (:field1,:field2,:field3,'''+DecoyFieldData2+''')');
|
|
|
Params.ParamByName('field1').AsInteger := 4;
|
|
|
Params.ParamByName('field2').AsInteger := 2;
|
|
|
Params.ParamByName('field3').AsInteger := 3;
|
|
@@ -750,7 +754,7 @@ begin
|
|
|
AssertEquals(2,FieldByName('FIELD1').asinteger);
|
|
|
AssertTrue(FieldByName('FIELD2').IsNull);
|
|
|
AssertTrue(FieldByName('FIELD3').IsNull);
|
|
|
- AssertEquals('decoytest',FieldByName('DECOY').AsString);
|
|
|
+ AssertEquals(DecoyFieldData1,FieldByName('DECOY').AsString);
|
|
|
next;
|
|
|
AssertEquals(3,FieldByName('FIELD1').asinteger);
|
|
|
AssertEquals(2,FieldByName('FIELD2').asinteger);
|
|
@@ -760,7 +764,7 @@ begin
|
|
|
AssertEquals(4,FieldByName('FIELD1').asinteger);
|
|
|
AssertEquals(2,FieldByName('FIELD2').asinteger);
|
|
|
AssertEquals(3,FieldByName('FIELD3').asinteger);
|
|
|
- AssertEquals(':decoy ::test $decoy2 $$2',FieldByName('DECOY').AsString);
|
|
|
+ AssertEquals(DecoyFieldData2,FieldByName('DECOY').AsString);
|
|
|
next;
|
|
|
AssertEquals(5,FieldByName('FIELD1').asinteger);
|
|
|
AssertEquals(2,FieldByName('FIELD2').asinteger);
|