Type behavior
MySQL type
SQLite default
DATE / DATETIME / TIMESTAMP / TIMEkept as declared
CHAR / VARCHAR / DECIMAL / FLOATkept as declared
TEXT / LONGTEXTTEXT
BLOB / LONGBLOBBLOB
TINYINT / YEARSMALLINT
MEDIUMINTINT
DOUBLEFLOAT
ENUM / SETNVARCHAR(n), sized to the longest allowed value
JSONLONGTEXT
The declared type is carried across wherever SQLite tolerates the name, and rewritten
only for types SQLite does not have. SQLite treats the declaration as an affinity hint
rather than a hard constraint, and the type-mapping review lets you change any of it
per column before the run.
Schema conversion
Generates SQLite-compatible DDL from MySQL table definitions
- indexes, primary keys and foreign keys come across;
engine-specific clauses
(ENGINE=InnoDB, ROW_FORMAT,
KEY_BLOCK_SIZE) are dropped because SQLite has
no equivalent.
Identity and AUTO_INCREMENT
Maps MySQL AUTO_INCREMENT columns to SQLite
INTEGER PRIMARY KEY AUTOINCREMENT on the PK
column - the SQLite rowid mechanism takes over key
generation natively on the target side.
File output
Writes a single self-contained SQLite database file
(.sqlite, .sqlite3, .db or
.db3) at the path you pick in the wizard - ready for
application packaging, mobile bundling, or distribution
without a server runtime. Overwrite / append behavior is a
wizard option.
Stored routines, events, and user permissions - out of scope
DBConvert's migration covers tables with their fields, types
and indexes, and foreign keys between them.
MySQL stored procedures, functions, triggers, events, and
GRANT-based user permissions stay in the
source database and are rewritten manually in SQLite's
trigger language - or moved into application code,
since SQLite has no stored-procedure layer and no
server-side user model.