|
3 | 3 | import static net.sf.jsqlparser.test.TestUtils.assertSqlCanBeParsedAndDeparsed;
|
4 | 4 | import static net.sf.jsqlparser.test.TestUtils.assertStatementCanBeDeparsedAs;
|
5 | 5 |
|
| 6 | +import java.util.Arrays; |
6 | 7 | import java.util.List;
|
7 | 8 |
|
8 | 9 | import junit.framework.TestCase;
|
@@ -252,4 +253,28 @@ public void testDropColumnRestrictIssue551() throws JSQLParserException {
|
252 | 253 | assertStatementCanBeDeparsedAs(stmt, "ALTER TABLE table1 DROP COLUMN NewColumn");
|
253 | 254 |
|
254 | 255 | }
|
| 256 | + |
| 257 | + public void testAddConstraintKeyIssue320() throws JSQLParserException { |
| 258 | + String tableName = "table1"; |
| 259 | + String columnName1 = "col1"; |
| 260 | + String columnName2 = "col2"; |
| 261 | + String columnName3 = "col3"; |
| 262 | + String columnName4 = "col4"; |
| 263 | + String constraintName1 = "table1_constraint_1"; |
| 264 | + String constraintName2 = "table1_constraint_2"; |
| 265 | + |
| 266 | + for(String constraintType : Arrays.asList("UNIQUE KEY", "KEY")) { |
| 267 | + Statement stmt = CCJSqlParserUtil.parse("ALTER TABLE " + tableName + " ADD CONSTRAINT " + constraintName1 + " " + constraintType + " (" + columnName1 + ")"); |
| 268 | + |
| 269 | + assertStatementCanBeDeparsedAs(stmt, "ALTER TABLE " + tableName + " ADD CONSTRAINT " + constraintName1 + " " + constraintType + " (" + columnName1 + ")"); |
| 270 | + |
| 271 | + stmt = CCJSqlParserUtil.parse("ALTER TABLE " + tableName + " ADD CONSTRAINT " + constraintName1 + " " + constraintType + " (" + columnName1 + ", " + columnName2 + ")"); |
| 272 | + |
| 273 | + assertStatementCanBeDeparsedAs(stmt, "ALTER TABLE " + tableName + " ADD CONSTRAINT " + constraintName1 + " " + constraintType + " (" + columnName1 + ", " + columnName2 + ")"); |
| 274 | + |
| 275 | + stmt = CCJSqlParserUtil.parse("ALTER TABLE " + tableName + " ADD CONSTRAINT " + constraintName1 + " " + constraintType + " (" + columnName1 + ", " + columnName2 + "), ADD CONSTRAINT " + constraintName2 + " " + constraintType + " (" + columnName3 + ", " + columnName4 + ")"); |
| 276 | + |
| 277 | + assertStatementCanBeDeparsedAs(stmt, "ALTER TABLE " + tableName + " ADD CONSTRAINT " + constraintName1 + " " + constraintType + " (" + columnName1 + ", " + columnName2 + "), ADD CONSTRAINT " + constraintName2 + " " + constraintType + " (" + columnName3 + ", " + columnName4 + ")"); |
| 278 | + } |
| 279 | + } |
255 | 280 | }
|
0 commit comments