composants orm object create - yamsuz/damix GitHub Wiki
$table1 = \damix\engines\orm\request\structure\OrmTable::newTable('maTable');
$create = new \damix\engines\orm\request\ormrequestcreate();
$create->setTable( $table1 );
$field = new \damix\engines\orm\request\structure\OrmField();
$field->setName('id');
$field->setDatatype(\damix\engines\orm\request\structure\OrmDataType::ORM_LONG);
$field->setNull( true );
$field->setUnsigned( true );
$table1->addField($field);
$table1->addPrimaryKey( $field );
$field = new \damix\engines\orm\request\structure\OrmField();
$field->setName('maChaine');
$field->setDatatype(\damix\engines\orm\request\structure\OrmDataType::ORM_STRING);
$field->setSize( 255 );
$field->setNull( true );
$field->setDefault( null );
$table1->addField($field);
$sql = $create->getSQL();
Si vous utilisez les schémas, vous devez associer la OrmTable au schéma afin que la requête SQL prennent en compte le nom du schéma
$schema = \damix\engines\orm\request\structure\OrmSchema::newSchema('monSchema');
$table1 = \damix\engines\orm\request\structure\OrmTable::newTable('maTable');
$create = new \damix\engines\orm\request\ormrequestcreate();
$create->setTable( $table1 );
[...]
$sql = $create->getSQL();
$schema->addTable( $table1 );
La création de la table ne prend pas en charge les index, les foreign key.