|
@@ -88,6 +88,7 @@ type
|
|
procedure TestDateParamQuery;
|
|
procedure TestDateParamQuery;
|
|
procedure TestIntParamQuery;
|
|
procedure TestIntParamQuery;
|
|
procedure TestTimeParamQuery;
|
|
procedure TestTimeParamQuery;
|
|
|
|
+ procedure TestDateTimeParamQuery;
|
|
procedure TestFmtBCDParamQuery;
|
|
procedure TestFmtBCDParamQuery;
|
|
procedure TestFloatParamQuery;
|
|
procedure TestFloatParamQuery;
|
|
procedure TestBCDParamQuery;
|
|
procedure TestBCDParamQuery;
|
|
@@ -740,6 +741,11 @@ begin
|
|
TestXXParamQuery(ftTime,FieldtypeDefinitionsConst[ftTime],testValuesCount);
|
|
TestXXParamQuery(ftTime,FieldtypeDefinitionsConst[ftTime],testValuesCount);
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
+procedure TTestFieldTypes.TestDateTimeParamQuery;
|
|
|
|
+begin
|
|
|
|
+ TestXXParamQuery(ftDateTime,FieldtypeDefinitions[ftDateTime],testValuesCount);
|
|
|
|
+end;
|
|
|
|
+
|
|
procedure TTestFieldTypes.TestFloatParamQuery;
|
|
procedure TTestFieldTypes.TestFloatParamQuery;
|
|
|
|
|
|
begin
|
|
begin
|
|
@@ -802,7 +808,8 @@ begin
|
|
ftDate : if cross then
|
|
ftDate : if cross then
|
|
Params.ParamByName('field1').AsString:= testDateValues[i]
|
|
Params.ParamByName('field1').AsString:= testDateValues[i]
|
|
else
|
|
else
|
|
- Params.ParamByName('field1').AsDateTime:= StrToDate(testDateValues[i],'yyyy/mm/dd','-');
|
|
|
|
|
|
+ Params.ParamByName('field1').AsDate := StrToDate(testDateValues[i],'yyyy/mm/dd','-');
|
|
|
|
+ ftDateTime:Params.ParamByName('field1').AsDateTime := StrToDateTime(testValues[ADataType,i], DBConnector.FormatSettings);
|
|
ftFMTBcd : Params.ParamByName('field1').AsFMTBCD:= StrToBCD(testFmtBCDValues[i],DBConnector.FormatSettings)
|
|
ftFMTBcd : Params.ParamByName('field1').AsFMTBCD:= StrToBCD(testFmtBCDValues[i],DBConnector.FormatSettings)
|
|
else
|
|
else
|
|
AssertTrue('no test for paramtype available',False);
|
|
AssertTrue('no test for paramtype available',False);
|
|
@@ -825,7 +832,8 @@ begin
|
|
ftFixedChar : AssertEquals(PadRight(testStringValues[i],10),FieldByName('FIELD1').AsString);
|
|
ftFixedChar : AssertEquals(PadRight(testStringValues[i],10),FieldByName('FIELD1').AsString);
|
|
ftString : AssertEquals(testStringValues[i],FieldByName('FIELD1').AsString);
|
|
ftString : AssertEquals(testStringValues[i],FieldByName('FIELD1').AsString);
|
|
ftTime : AssertEquals(testTimeValues[i],DateTimeToTimeString(FieldByName('FIELD1').AsDateTime));
|
|
ftTime : AssertEquals(testTimeValues[i],DateTimeToTimeString(FieldByName('FIELD1').AsDateTime));
|
|
- ftdate : AssertEquals(testDateValues[i],FormatDateTime('yyyy/mm/dd',FieldByName('FIELD1').AsDateTime, DBConnector.FormatSettings));
|
|
|
|
|
|
+ ftDate : AssertEquals(testDateValues[i],DateTimeToStr(FieldByName('FIELD1').AsDateTime, DBConnector.FormatSettings));
|
|
|
|
+ ftDateTime : AssertEquals(testValues[ADataType,i], DateTimeToStr(FieldByName('FIELD1').AsDateTime, DBConnector.FormatSettings));
|
|
ftFMTBcd : AssertEquals(testFmtBCDValues[i],BCDToStr(FieldByName('FIELD1').AsBCD,DBConnector.FormatSettings))
|
|
ftFMTBcd : AssertEquals(testFmtBCDValues[i],BCDToStr(FieldByName('FIELD1').AsBCD,DBConnector.FormatSettings))
|
|
else
|
|
else
|
|
AssertTrue('no test for paramtype available',False);
|
|
AssertTrue('no test for paramtype available',False);
|
|
@@ -1638,10 +1646,13 @@ procedure TTestFieldTypes.TestSQLClob;
|
|
begin
|
|
begin
|
|
AssertEquals(testStringValues[a],AField.AsString);
|
|
AssertEquals(testStringValues[a],AField.AsString);
|
|
end;
|
|
end;
|
|
|
|
+var datatype: string;
|
|
begin
|
|
begin
|
|
- if SQLDbType=interbase then
|
|
|
|
- Ignore('This test does not apply to Interbase/Firebird, since it does not support CLOB fields');
|
|
|
|
- TestSQLFieldType(ftMemo, 'CLOB', 0, @TestSQLClob_GetSQLText, @CheckFieldValue);
|
|
|
|
|
|
+ if sqlDBType=sqlite3 then
|
|
|
|
+ datatype:='CLOB'
|
|
|
|
+ else
|
|
|
|
+ datatype:=FieldtypeDefinitions[ftMemo];
|
|
|
|
+ TestSQLFieldType(ftMemo, datatype, 0, @TestSQLClob_GetSQLText, @CheckFieldValue);
|
|
end;
|
|
end;
|
|
|
|
|
|
// Placed here, as long as bug 18702 is not solved
|
|
// Placed here, as long as bug 18702 is not solved
|
|
@@ -1655,14 +1666,15 @@ procedure TTestFieldTypes.TestSQLLargeint;
|
|
begin
|
|
begin
|
|
AssertEquals(testLargeIntValues[a],AField.AsLargeInt);
|
|
AssertEquals(testLargeIntValues[a],AField.AsLargeInt);
|
|
end;
|
|
end;
|
|
|
|
+var datatype: string;
|
|
begin
|
|
begin
|
|
- if sqlDBType=interbase then
|
|
|
|
- TestSQLFieldType(ftLargeint, 'BIGINT', 8, @TestSQLLargeint_GetSQLText, @CheckFieldValue)
|
|
|
|
|
|
+ if sqlDBType=sqlite3 then
|
|
|
|
+ datatype:='LARGEINT'
|
|
else
|
|
else
|
|
- TestSQLFieldType(ftLargeint, 'LARGEINT', 8, @TestSQLLargeint_GetSQLText, @CheckFieldValue);
|
|
|
|
|
|
+ datatype:='BIGINT';
|
|
|
|
+ TestSQLFieldType(ftLargeint, datatype, 8, @TestSQLLargeint_GetSQLText, @CheckFieldValue);
|
|
end;
|
|
end;
|
|
|
|
|
|
-
|
|
|
|
procedure TTestFieldTypes.TestUpdateIndexDefs;
|
|
procedure TTestFieldTypes.TestUpdateIndexDefs;
|
|
var ds : TSQLQuery;
|
|
var ds : TSQLQuery;
|
|
begin
|
|
begin
|