دروپال 8: ایجاد فیلد در جداول پایگاه داده در hook_update_N

قبل از هرچیز کد زیر باید در بالای فایل install باشد:

use Drupal\Core\Database\Database;

ایجاد فیلد جدید

<?php
  $spec = array(
    'type' => 'varchar',
    'description' => "New Col",
    'length' => 20,
    'not null' => FALSE,
  ); 
 $schema = Database::getConnection()->schema();
 $schema->addField('mytable1', 'newcol', $spec);
?>

ایجاد جدول جدید

<?php
  $spec = array(
    'description' => 'My description',
    'fields' => array(
      'myfield1' => array(
        'description' => 'Myfield1 description.',
        'type' => 'varchar',
        'length' => 255,
        'not null' => TRUE,
        'default' => '',
      ),
      'myfield2' => array(
        'description' => 'Myfield2 description',
        'type' => 'text',
        'not null' => TRUE,
      ),
    ),
    'primary key' => array('myfield1'),
  ); 
 $schema = Database::getConnection()->schema();
 $schema->createTable('mytable2', $spec);
?>

ایجاد کلید یا فهرست

<?php
 $spec = array('myfield1');
 $schema = Database::getConnection()->schema();
 // A normal index.
 $schema->addIndex('mytable', $spec);
 // A primary key.
 $schema->addPrimaryKey('mytable', $spec);
 // A unique key.
 $schema->addUniqueKey('mytable', $spec);
?>

تغییر اطلاعات جداول

<?php
$schema = Database::getConnection()->query(  [your query goes here] );
?>
برچسب ها: 

افزودن نظر جدید