Skip to content

SQLParserDelegate不能解析DDL语句中的FOREIGN KEY #83

@long187

Description

@long187
CREATE TABLE IF NOT EXISTS `test_table_normal`(  
scoreID INTEGER NOT NULL PRIMARY KEY,  
stuID     INTEGER NOT NULL,  
KEMUID     INTEGER NOT NULL,  
score     FLOAT,  
FOREIGN KEY SCORE_ID_FK (stuID) REFERENCES students (stuid),  
CONSTRAINT CHK_SCORE_ZIP CHECK (SCORE > 0)  
);  
ALTER TABLE test_table_normal
ADD FOREIGN KEY (stuID)
REFERENCES Persons(stuID);

报错:

java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; Error occurs around this fragment: {FLOAT,  
FOREIGN KEY SCORE}. Error cause: unsupportted column definition
	at com.alibaba.cobar.parser.recognizer.SQLParserDelegate.parse(SQLParserDelegate.java:155)
	at com.alibaba.cobar.parser.recognizer.SQLParserDelegate.parse(SQLParserDelegate.java:160)
	at com.alibaba.cobar.parser.recognizer.SQLParserDelegate.parse(SQLParserDelegate.java:164)
	at com.alibaba.cobar.parser.recognizer.SQLParserDelegateTest.testCreateAndDropTable(SQLParserDelegateTest.java:157)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions