diff --git a/packages/fcl-db/src/sql/fpsqlparser.pas b/packages/fcl-db/src/sql/fpsqlparser.pas index 80737e3f40..acb17cef6b 100644 --- a/packages/fcl-db/src/sql/fpsqlparser.pas +++ b/packages/fcl-db/src/sql/fpsqlparser.pas @@ -1846,7 +1846,7 @@ begin tsqlDouble: begin GetNextToken; - Consume(tsqlPrecision); //DOUBLE PRECISION + Expect(tsqlPrecision); //DOUBLE PRECISION dt:=sdtDoublePrecision; end; tsqlFloat: diff --git a/packages/fcl-db/tests/tcparser.pas b/packages/fcl-db/tests/tcparser.pas index 12633c6483..8412683607 100644 --- a/packages/fcl-db/tests/tcparser.pas +++ b/packages/fcl-db/tests/tcparser.pas @@ -178,6 +178,7 @@ type procedure TestSmallInt; procedure TestFloat; procedure TestDoublePrecision; + procedure TestDoublePrecisionDefault; end; { TTestCheckParser } @@ -1794,6 +1795,13 @@ begin TD:=TestType('DOUBLE PRECISION',[],sdtDoublePrecision); end; +procedure TTestTypeParser.TestDoublePrecisionDefault; +var + TD : TSQLTypeDefinition; +begin + TD:=TestType('DOUBLE PRECISION DEFAULT 0',[],sdtDoublePrecision); +end; + procedure TTestTypeParser.TestBlobError1; begin FerrSource:='BLOB (1,)';