-
Notifications
You must be signed in to change notification settings - Fork 5
Closed
Labels
Description
Summary
The parser does not fully support ALTER TABLE statements with column operations.
Current Behavior
ALTER TABLE users ADD COLUMN email VARCHAR(255)Error: expected ADD, DROP, RENAME, or ALTER, got IDENT
Expected Behavior
Full support for ALTER TABLE column operations.
Operations to Support
-- ADD COLUMN
ALTER TABLE users ADD COLUMN email VARCHAR(255);
ALTER TABLE users ADD COLUMN created_at TIMESTAMP DEFAULT NOW();
-- DROP COLUMN
ALTER TABLE users DROP COLUMN temp_field;
ALTER TABLE users DROP COLUMN IF EXISTS old_field;
-- RENAME COLUMN
ALTER TABLE users RENAME COLUMN old_name TO new_name;
-- ALTER COLUMN (modify type)
ALTER TABLE users ALTER COLUMN age TYPE BIGINT;
ALTER TABLE users ALTER COLUMN name SET NOT NULL;
ALTER TABLE users ALTER COLUMN status SET DEFAULT 'active';
ALTER TABLE users ALTER COLUMN email DROP NOT NULL;
-- ADD CONSTRAINT
ALTER TABLE users ADD CONSTRAINT pk_users PRIMARY KEY (id);
ALTER TABLE orders ADD CONSTRAINT fk_user FOREIGN KEY (user_id) REFERENCES users(id);
-- DROP CONSTRAINT
ALTER TABLE users DROP CONSTRAINT constraint_name;Priority
🟡 Medium - Important for DDL analysis and migration tools.
Impact
- Battle test: 2 test failures
- Important for schema evolution tracking