Download the PHP package mathsgod/json-to-sql without Composer
On this page you can find all versions of the php package mathsgod/json-to-sql. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package json-to-sql
JSON to SQL Converter
A PHP tool that converts database table definitions in JSON format to SQL CREATE TABLE statements.
Features
- ✅ Batch conversion of multiple tables
- ✅ Support for complex field types and attributes
- ✅ Primary Key support
- ✅ Unique Key support
- ✅ Index support
- ✅ Foreign Key support
- ✅ AUTO_INCREMENT support
- ✅ Storage engine configuration (InnoDB, etc.)
- ✅ Charset and Collation support
Requirements
- PHP >= 8.1
- Composer
Installation
Usage
Basic Usage
-
Create a
db.jsonfile in your project root with your table definitions (see JSON Format Specification below). - Create a
convert.phpscript to use the converter:
Output
The converted SQL statements will be output to the console. You can also save them to a file by uncommenting the file_put_contents() line or redirecting the output.
JSON Format Specification
The JSON file should contain an array of tables, each with the following structure:
Table Structure
Column Attributes
| Attribute | Type | Description | Required |
|---|---|---|---|
name |
string | Column name | ✅ |
type |
string | Column type (VARCHAR, INT, DATETIME, etc.) | ✅ |
length |
integer | Column length (for VARCHAR, CHAR, etc.) | ❌ |
unsigned |
boolean | Whether unsigned (for numeric types) | ❌ |
nullable |
boolean | Allow NULL (default: true) | ❌ |
auto_increment |
boolean | Auto increment | ❌ |
default |
string|integer | Default value | ❌ |
Table Attributes
| Attribute | Type | Description | Default |
|---|---|---|---|
name |
string | Table name | - |
columns |
array | Array of columns | [] |
primary_key |
array | Primary key columns | [] |
unique_keys |
array | Array of unique keys | [] |
indexes |
array | Array of indexes | [] |
foreign_keys |
array | Array of foreign keys | [] |
engine |
string | Storage engine | InnoDB |
charset |
string | Character set | utf8mb4 |
collate |
string | Collation | null |
Foreign Key Configuration
Examples
Create your db.json file in the project root with table definitions following the JSON Format Specification below.
License
MIT
Author
Raymond Chong ([email protected])