xnuinside/simple-ddl-parser

Fails to parse if DDL lacks semicolon or GO between statements.

n2ygk opened this issue · 4 comments

n2ygk commented

Describe the bug
Fails to parse some ddl if there's no semicolon or GO in between statements.

This silently fails to produce output:

DROP TABLE IF EXISTS sample
CREATE TABLE sample
(
     sid BIGINT NOT NULL,
     foo CHAR(5),
     CONSTRAINT sample_key PRIMARY KEY NONCLUSTERED (sid)
)

While this succeeds (adds a semicolon).

DROP TABLE IF EXISTS sample;
CREATE TABLE sample
(
     sid BIGINT NOT NULL,
     foo CHAR(5),
     CONSTRAINT sample_key PRIMARY KEY NONCLUSTERED (sid)
)

To Reproduce

sdp sample_ddl.sql

Expected behavior
Parser output or an error message or non-zero exit code.

hi @n2ygk to be honest )) before your issue I leave all the time with thoughts that between different statements you need separator or you will get syntax error )

n2ygk commented

@n2ygk I will add support of this in next release

@n2ygk fixes for both issues were released in version 0.22.0 - https://pypistats.org/packages/simple-ddl-parser . If you will find anything more - please feel free to open new issue and thank you one more time!