IronyProject / Irony

Irony — .NET Language Implementation Kit
https://www.nuget.org/packages/Irony
MIT License
512 stars 97 forks source link

Why Sql Parser Has Error This SQL statement ... #56

Open hakanornek opened 1 year ago

hakanornek commented 1 year ago

The following sql statements work without error, but irony parser is giving an error, any idea why?

Irony Parser Error : (42:35) {Syntax error, expected: ., ), ,, INNER, LEFT, RIGHT, JOIN, WHERE, GROUP, HAVING, ORDER, ;, CREATE, ALTER, DROP, SELECT, INSERT, UPDATE, DELETE, GO, ON} Thanks for helps.

SELECT "P"."PRODUCT_GUID", "P"."PRODUCT_NO", "P"."PRODUCT_BARCODE", "P"."PRODUCT_SERIAL_NO", "P"."PRODUCT_CODE", "P"."PRODUCT_NAME", "P"."PRODUCT_UNIT", "P"."PRODUCT_UNIT_CODE", "P"."PRODUCT_MONEY", "P"."PRODUCT_MONEY_CODE", "P"."PRODUCT_TYPE", "P"."PRODUCT_KIND", "P"."PRODUCT_ISSUE_DATE", "P"."PRODUCT_EXPIRE_DATE", "P"."USER_TYPE", "P"."PRODUCT_ALLOWS", "P"."ROW_FLAG_STATUS", "P"."ROW_FLAG_ALLOWS", "P"."ROW_FLAG_SELECTED", "P"."ROW_FONT_NAME", "P"."ROW_FONT_STYLE", "P"."ROW_FORECOLOR", "P"."ROW_BACKCOLOR", "F"."PRICE_GUID", "F"."PRODUCT_GUID", "F"."RATE_MATERIAL", "F"."RATE_LABOR", "F"."RATE_EQUIPMENT", "F"."RATE_TRANSPORT", "F"."RATE_SUBCON", "F"."RATE_CUSTOM", "F"."RATE_TESTING", "F"."RATE_OTHER", "F"."RATE_TOTAL", "F"."PRICE_PRODUCT", "F"."PRICE_MONTAGE", "F"."PRICE_DEMONTAGE", "F"."PRICE_TRANSPORT", "F"."PRICE_ONSITE", "F"."PRICE_TOTAL", "F"."UNIT_PRICE" FROM "P01_04_RES_ITEMS" "P" LEFT OUTER JOIN "P01_04_RES_ITEM_PRICES" "F" ON "P"."PRODUCT_GUID" = "F"."PRODUCT_GUID" AND "P"."OWNER_GUID" = "F"."OWNER_GUID" AND "F"."PRICE_DATE_YEAR" = '2023' AND "F"."PRICE_DATE_MONTH" = '1' AND "F"."PRICE_DATE_DAY" = '1' AND "F"."PRICE_HOLD_TYPE" = 0
WHERE "P"."OWNER_GUID" = 'CFG-{0B257BA5-3E42-4845-B15E-05094724C05E}' AND "P"."USER_TYPE" = 0 AND "P"."ROW_FLAG_STATUS" = 0 ORDER BY "P"."PRODUCT_CODE" ASC

rivantsov commented 1 year ago

First, remember SQL grammar is just a sample, not supposed to be a full exact grammar for some server. It is in no way a full grammar. Based on error location, I guess it does not like table alias "P" in quotes, try it without quotes