davajlama / schemabuilder
There is no license information available for the latest version (2.0.0) of this package.
Database Schema Builder
2.0.0
2020-12-04 22:00 UTC
Requires (Dev)
- phpunit/phpunit: 5.5.*
- squizlabs/php_codesniffer: ^3.4
This package is auto-updated.
Last update: 2026-03-19 04:17:23 UTC
README
WARNING: THIS IS STILL DEVELOPMENT VERSION
MySQL Support:
- create tables
- alter tables
- create indexes
- alter indexes
Demo
use Davajlama\SchemaBuilder\Bridge\PDOAdapter; use Davajlama\SchemaBuilder\Driver\MySqlDriver; use Davajlama\SchemaBuilder\Schema; use Davajlama\SchemaBuilder\Schema\Type; use Davajlama\SchemaBuilder\SchemaBuilder; use Davajlama\SchemaBuilder\SchemaCreator; $adapter = new PDOAdapter(PDO($dsn, $username)); $driver = new MySqlDriver($adapter); $builder = new SchemaBuilder($driver); $schema = new Schema(); $articlesTable = $schema->createTable('articles'); $articlesTable->createId(); $articlesTable->createColumn('title', Type::varcharType(255)); $articlesTable->createColumn('content', Type::textType()); $articlesTable->createColumn('created', Type::dateTimeType()); $articlesTable->createIndex() ->addColumn('created'); $patches = $builder->buildSchemaPatches($schema); // print queries foreach($patches as $patch) { echo $patch->getQuery() . PHP_EOL; } // apply patches $creator = new SchemaCreator($driver); $creator->applyPatches($patches);
for more examples look at tests