27 |
|
|
28 |
|
{$Mode Delphi} |
29 |
|
|
30 |
+ |
{$codepage UTF8} |
31 |
+ |
|
32 |
|
interface |
33 |
|
|
34 |
|
uses Classes, DB; |
290 |
|
if not (FState in [stInComment,stInCommentLine]) then |
291 |
|
begin |
292 |
|
AddToSQL(':'); |
293 |
< |
SetState(stInParam); |
293 |
> |
if not (FState in [stInSingleQuotes,stInDoubleQuotes]) then |
294 |
> |
SetState(stInParam); |
295 |
|
end; |
296 |
|
|
297 |
|
sqSemiColon: |
450 |
|
FState := PopState; |
451 |
|
stInDoubleQuotes, |
452 |
|
stInSingleQuotes: |
453 |
< |
raise Exception.Create(sNoEndToThis); |
453 |
> |
Begin |
454 |
> |
FLiteral := FLiteral + #$0A; |
455 |
> |
Exit; |
456 |
> |
End; |
457 |
|
end; |
458 |
|
AddToSQL(' '); |
459 |
|
Exit; |
788 |
|
Inc(index) |
789 |
|
end; |
790 |
|
|
791 |
< |
if (Result = sqString) and not (FState in [stInComment,stInCommentLine])then |
791 |
> |
if (Result = sqString) and not (FState in [stInComment,stInCommentLine, stInSingleQuotes,stInDoubleQuotes])then |
792 |
|
Result := Check4ReservedWord(FString); |
793 |
|
|
794 |
|
if (index > Length(Line)) then |
795 |
< |
if Result = sqNone then |
795 |
> |
begin |
796 |
> |
if (Result = sqNone) then |
797 |
|
Result := sqEOL |
798 |
|
else |
799 |
|
if (FLastSymbol = sqNone) and (Result <> sqEOL) then |
800 |
|
FLastSymbol := sqEOL; |
801 |
+ |
end; |
802 |
|
|
803 |
|
end; |
804 |
|
|