Handles the well-defined differences — auto-increment syntax, identifier quoting, string concatenation, and NOW() — not a full SQL parser.
AUTO_INCREMENT (MySQL) ⇄ SERIAL (Postgres) ⇄ INTEGER PRIMARY KEY AUTOINCREMENT (SQLite)CONCAT(a, b) (MySQL) ⇄ a || b (Postgres/SQLite)NOW() → CURRENT_TIMESTAMP when converting away from MySQLThis is pattern matching, not a real SQL parser — it won't catch every dialect-specific function, window function syntax, or data type nuance (MySQL's TINYINT(1) booleans, Postgres arrays, SQLite's dynamic typing, and so on). Always review the output before running it against a real database.