Connect to mysql

Creating and Dropping Tables¶

There are several things you may wish to do when creating tables. Add
fields, add keys to the table, alter columns. CodeIgniter provides a
mechanism for this.

Fields are created via an associative array. Within the array you must
include a ‘type’ key that relates to the datatype of the field. For
example, INT, VARCHAR, TEXT, etc. Many datatypes (for example VARCHAR)
also require a ‘constraint’ key.

$fields = array(
        'users' => array(
                'type' => 'VARCHAR',
                'constraint' => '100',
        ),
);
// will translate to "users VARCHAR(100)" when the field is added.

Additionally, the following key/values can be used:

  • unsigned/true : to generate “UNSIGNED” in the field definition.
  • default/value : to generate a default value in the field definition.
  • null/true : to generate “NULL” in the field definition. Without this,
    the field will default to “NOT NULL”.
  • auto_increment/true : generates an auto_increment flag on the
    field. Note that the field type must be a type that supports this,
    such as integer.
  • unique/true : to generate a unique key for the field definition.
$fields = array(
        'blog_id' => array(
                'type' => 'INT',
                'constraint' => 5,
                'unsigned' => TRUE,
                'auto_increment' => TRUE
        ),
        'blog_title' => array(
                'type' => 'VARCHAR',
                'constraint' => '100',
                'unique' => TRUE,
        ),
        'blog_author' => array(
                'type' =>'VARCHAR',
                'constraint' => '100',
                'default' => 'King of Town',
        ),
        'blog_description' => array(
                'type' => 'TEXT',
                'null' => TRUE,
        ),
);

After the fields have been defined, they can be added using
followed by a call to the
method.

$this->dbforge->add_field()

The add fields method will accept the above array.

Passing strings as fields

If you know exactly how you want a field to be created, you can pass the
string into the field definitions with add_field()

$this->dbforge->add_field("label varchar(100) NOT NULL DEFAULT 'default label'");

Note

Passing raw strings as fields cannot be followed by calls on those fields.

Note

Multiple calls to add_field() are cumulative.

Creating an id field

There is a special exception for creating id fields. A field with type
id will automatically be assigned as an INT(9) auto_incrementing
Primary Key.

$this->dbforge->add_field('id');
// gives id INT(9) NOT NULL AUTO_INCREMENT

Generally speaking, you’ll want your table to have Keys. This is
accomplished with $this->dbforge->add_key(‘field’). An optional second
parameter set to TRUE will make it a primary key. Note that add_key()
must be followed by a call to create_table().

Multiple column non-primary keys must be sent as an array. Sample output
below is for MySQL.

$this->dbforge->add_key('blog_id', TRUE);
// gives PRIMARY KEY `blog_id` (`blog_id`)

$this->dbforge->add_key('blog_id', TRUE);
$this->dbforge->add_key('site_id', TRUE);
// gives PRIMARY KEY `blog_id_site_id` (`blog_id`, `site_id`)

$this->dbforge->add_key('blog_name');
// gives KEY `blog_name` (`blog_name`)

$this->dbforge->add_key(array('blog_name', 'blog_label'));
// gives KEY `blog_name_blog_label` (`blog_name`, `blog_label`)

After fields and keys have been declared, you can create a new table
with

$this->dbforge->create_table('table_name');
// gives CREATE TABLE table_name

An optional second parameter set to TRUE adds an “IF NOT EXISTS” clause
into the definition

$this->dbforge->create_table('table_name', TRUE);
// gives CREATE TABLE IF NOT EXISTS table_name

You could also pass optional table attributes, such as MySQL’s :

$attributes = array('ENGINE' => 'InnoDB');
$this->dbforge->create_table('table_name', FALSE, $attributes);
// produces: CREATE TABLE `table_name` (...) ENGINE = InnoDB DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

Note

Unless you specify the and/or attributes,
will always add them with your configured char_set
and dbcollat values, as long as they are not empty (MySQL only).

Execute a DROP TABLE statement and optionally add an IF EXISTS clause.

// Produces: DROP TABLE table_name
$this->dbforge->drop_table('table_name');

// Produces: DROP TABLE IF EXISTS table_name
$this->dbforge->drop_table('table_name',TRUE);

Class Reference¶

($table, $field = [])
Parameters:
  • $table (string) – Table name to add the column to
  • $field (array) – Column definition(s)
Returns:

true on success, false on failure

Return type:

bool

Adds a column to a table. Usage: See .

($field)
Parameters:
Returns:

CodeIgniterDatabaseForge instance (method chaining)

Return type:

CodeIgniterDatabaseForge

Adds a field to the set that will be used to create a table. Usage: See .

($key, $primary = false, $unique = false)
Parameters:
  • $key (mixed) – Name of a key field or an array of fields
  • $primary (bool) – Set to true if it should be a primary key or a regular one
  • $unique (bool) – Set to true if it should be a unique key or a regular one
Returns:

CodeIgniterDatabaseForge instance (method chaining)

Return type:

CodeIgniterDatabaseForge

Adds a key to the set that will be used to create a table. Usage: See .

($key)
Parameters:
Returns:

CodeIgniterDatabaseForge instance (method chaining)

Return type:

CodeIgniterDatabaseForge

Adds a primary key to the set that will be used to create a table. Usage: See .

($key)
Parameters:
Returns:

CodeIgniterDatabaseForge instance (method chaining)

Return type:

CodeIgniterDatabaseForge

Adds a unique key to the set that will be used to create a table. Usage: See .

($dbName, $ifNotExists = false)
Parameters:
  • $db_name (string) – Name of the database to create
  • $ifNotExists (string) – Set to true to add an ‘IF NOT EXISTS’ clause or check if database exists
Returns:

true on success, false on failure

Return type:

bool

Creates a new database. Usage: See .

($table, $if_not_exists = false, array $attributes = [])
Parameters:
  • $table (string) – Name of the table to create
  • $if_not_exists (string) – Set to true to add an ‘IF NOT EXISTS’ clause
  • $attributes (string) – An associative array of table attributes
Returns:

Query object on success, false on failure

Return type:

mixed

Creates a new table. Usage: See .

($table, $column_name)
Parameters:
  • $table (string) – Table name
  • $column_names (mixed) – Comma-delimited string or an array of column names
Returns:

true on success, false on failure

Return type:

bool

Drops single or multiple columns from a table. Usage: See .

($dbName)
Parameters:
Returns:

true on success, false on failure

Return type:

bool

Drops a database. Usage: See .

($table_name, $if_exists = false)
Parameters:
  • $table (string) – Name of the table to drop
  • $if_exists (string) – Set to true to add an ‘IF EXISTS’ clause
Returns:

true on success, false on failure

Return type:

bool

Drops a table. Usage: See .

($table, $field)
Parameters:
  • $table (string) – Table name
  • $field (array) – Column definition(s)
Returns:

true on success, false on failure

Return type:

bool

Modifies a table column. Usage: See .

($table_name, $new_table_name)
Parameters:
  • $table (string) – Current of the table
  • $new_table_name (string) – New name of the table
Returns:

Query object on success, false on failure

Return type:

mixed

Renames a table. Usage: See .

Modifying Tables¶

$this->dbforge->add_column()

The method is used to modify an existing table. It
accepts the same field array as above, and can be used for an unlimited
number of additional fields.

$fields = array(
        'preferences' => array('type' => 'TEXT')
);
$this->dbforge->add_column('table_name', $fields);
// Executes: ALTER TABLE table_name ADD preferences TEXT

If you are using MySQL or CUBIRD, then you can take advantage of their
AFTER and FIRST clauses to position the new column.

Examples:

// Will place the new column after the `another_field` column:
$fields = array(
        'preferences' => array('type' => 'TEXT', 'after' => 'another_field')
);

// Will place the new column at the start of the table definition:
$fields = array(
        'preferences' => array('type' => 'TEXT', 'first' => TRUE)
);

$this->dbforge->drop_column()

Used to remove a column from a table.

$this->dbforge->drop_column('table_name', 'column_to_drop');

Creating and Dropping Tables¶

There are several things you may wish to do when creating tables. Add
fields, add keys to the table, alter columns. CodeIgniter provides a
mechanism for this.

Fields are created via an associative array. Within the array you must
include a ‘type’ key that relates to the datatype of the field. For
example, INT, VARCHAR, TEXT, etc. Many datatypes (for example VARCHAR)
also require a ‘constraint’ key.

$fields = array(
        'users' => array(
                'type' => 'VARCHAR',
                'constraint' => '100',
        ),
);
// will translate to "users VARCHAR(100)" when the field is added.

Additionally, the following key/values can be used:

  • unsigned/true : to generate “UNSIGNED” in the field definition.
  • default/value : to generate a default value in the field definition.
  • null/true : to generate “NULL” in the field definition. Without this,
    the field will default to “NOT NULL”.
  • auto_increment/true : generates an auto_increment flag on the
    field. Note that the field type must be a type that supports this,
    such as integer.
  • unique/true : to generate a unique key for the field definition.
$fields = array(
        'blog_id' => array(
                'type' => 'INT',
                'constraint' => 5,
                'unsigned' => TRUE,
                'auto_increment' => TRUE
        ),
        'blog_title' => array(
                'type' => 'VARCHAR',
                'constraint' => '100',
                'unique' => TRUE,
        ),
        'blog_author' => array(
                'type' =>'VARCHAR',
                'constraint' => '100',
                'default' => 'King of Town',
        ),
        'blog_description' => array(
                'type' => 'TEXT',
                'null' => TRUE,
        ),
);

After the fields have been defined, they can be added using
followed by a call to the
method.

$this->dbforge->add_field()

The add fields method will accept the above array.

Passing strings as fields

If you know exactly how you want a field to be created, you can pass the
string into the field definitions with add_field()

$this->dbforge->add_field("label varchar(100) NOT NULL DEFAULT 'default label'");

Note

Passing raw strings as fields cannot be followed by calls on those fields.

Note

Multiple calls to add_field() are cumulative.

Creating an id field

There is a special exception for creating id fields. A field with type
id will automatically be assigned as an INT(9) auto_incrementing
Primary Key.

$this->dbforge->add_field('id');
// gives id INT(9) NOT NULL AUTO_INCREMENT

Generally speaking, you’ll want your table to have Keys. This is
accomplished with $this->dbforge->add_key(‘field’). An optional second
parameter set to TRUE will make it a primary key. Note that add_key()
must be followed by a call to create_table().

Multiple column non-primary keys must be sent as an array. Sample output
below is for MySQL.

$this->dbforge->add_key('blog_id', TRUE);
// gives PRIMARY KEY `blog_id` (`blog_id`)

$this->dbforge->add_key('blog_id', TRUE);
$this->dbforge->add_key('site_id', TRUE);
// gives PRIMARY KEY `blog_id_site_id` (`blog_id`, `site_id`)

$this->dbforge->add_key('blog_name');
// gives KEY `blog_name` (`blog_name`)

$this->dbforge->add_key(array('blog_name', 'blog_label'));
// gives KEY `blog_name_blog_label` (`blog_name`, `blog_label`)

After fields and keys have been declared, you can create a new table
with

$this->dbforge->create_table('table_name');
// gives CREATE TABLE table_name

An optional second parameter set to TRUE adds an “IF NOT EXISTS” clause
into the definition

$this->dbforge->create_table('table_name', TRUE);
// gives CREATE TABLE IF NOT EXISTS table_name

You could also pass optional table attributes, such as MySQL’s :

$attributes = array('ENGINE' => 'InnoDB');
$this->dbforge->create_table('table_name', FALSE, $attributes);
// produces: CREATE TABLE `table_name` (...) ENGINE = InnoDB DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

Note

Unless you specify the and/or attributes,
will always add them with your configured char_set
and dbcollat values, as long as they are not empty (MySQL only).

Execute a DROP TABLE statement and optionally add an IF EXISTS clause.

// Produces: DROP TABLE table_name
$this->dbforge->drop_table('table_name');

// Produces: DROP TABLE IF EXISTS table_name
$this->dbforge->drop_table('table_name',TRUE);

Class Reference¶

class
($table, $field = array(), $_after = NULL)
Parameters:
  • $table (string) – Table name to add the column to
  • $field (array) – Column definition(s)
  • $_after (string) – Column for AFTER clause (deprecated)
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Adds a column to a table. Usage: See .

($field)
Parameters:
Returns:

CI_DB_forge instance (method chaining)

Return type:

CI_DB_forge

Adds a field to the set that will be used to create a table. Usage: See .

($key, $primary = FALSE)
Parameters:
  • $key (array) – Name of a key field
  • $primary (bool) – Set to TRUE if it should be a primary key or a regular one
Returns:

CI_DB_forge instance (method chaining)

Return type:

CI_DB_forge

Adds a key to the set that will be used to create a table. Usage: See .

($db_name)
Parameters:
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Creates a new database. Usage: See .

($table, $if_not_exists = FALSE, array $attributes = array())
Parameters:
  • $table (string) – Name of the table to create
  • $if_not_exists (string) – Set to TRUE to add an ‘IF NOT EXISTS’ clause
  • $attributes (string) – An associative array of table attributes
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Creates a new table. Usage: See .

($table, $column_name)
Parameters:
  • $table (string) – Table name
  • $column_name (array) – The column name to drop
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Drops a column from a table. Usage: See .

($db_name)
Parameters:
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Drops a database. Usage: See .

($table_name, $if_exists = FALSE)
Parameters:
  • $table (string) – Name of the table to drop
  • $if_exists (string) – Set to TRUE to add an ‘IF EXISTS’ clause
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Drops a table. Usage: See .

($table, $field)
Parameters:
  • $table (string) – Table name
  • $field (array) – Column definition(s)
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Modifies a table column. Usage: See .

($table_name, $new_table_name)
Parameters:
  • $table (string) – Current of the table
  • $new_table_name (string) – New name of the table
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Renames a table. Usage: See .

Initializing the Forge Class¶

Important

In order to initialize the Forge class, your database
driver must already be running, since the forge class relies on it.

Load the Forge Class as follows:

$this->load->dbforge()

You can also pass another database object to the DB Forge loader, in case
the database you want to manage isn’t the default one:

$this->myforge = $this->load->dbforge($this->other_db, TRUE);

In the above example, we’re passing a custom database object as the first
parameter and then tell it to return the dbforge object, instead of
assigning it directly to .

Note

Both of the parameters can be used individually, just pass an empty
value as the first one if you wish to skip it.

Once initialized you will access the methods using the
object:

Data Generator

The Data Generator tool is the solution that allows creating massive volumes of realistic test data. This option is an indispensable part of database testing and proper maintenance, and dbForge Studio makes it possible to populate your MySQL database tables with random data in a few clicks.

As for MySQL Workbench, automated data generation is absent there. And the consequence of manual data generation might involve significant time loss and risks of slowing the whole process down.

dbForge Studio supports a wide range of MySQL column data types and ensures SQL data integrity. Its functionality enables you to customize data generators, obtain the data preview in real time, schedule routine generation tasks, and much more.

Cloud Deployment

It may be a bit tricky to deploy that sample in the Cloud because it requires two steps in order to be run:

1/ You need to translate at least one model using your own Forge credentials, so it can be loaded by your app. In order to do that take a look at the step-by-step tutorial from the Model Derivative API to understand exactly what this is about.

Once you have translated at least one model, take note of its URN, that’s the base64 encoded objectId. You also need a model which has some «Material» properties to be compatible with forge-rcdb because it is expecting components with that property. You can use Engine.dwf placed in the resource/models directory of this project.

2/ You need valid credentials to a MongoDB Cloud database that holds materials and models records. I suggest MongoDB Atlas or Compose MongoDB. With Atlas you can set up an account for free, that’s way enough for running multiple samples. Creating the database, with one user, will give you the credentials you need: dbname, dbhost, user, password and dbport.
Important: your database name needs to be «forge-rcdb», it is currently hardcoded in the sample, or you need to change that accordingly in the project config.

Import the two collections as ‘rcdb.materials’ and ‘rcdb.models’, then edit rcdb.model to replace the URN of your custom translated Engine.dwf model from step 1/

You should be ready to deploy to heroku, providing the same Forge credentials used to translate the model and valid credentials of the database when prompted for the environment settings.

Class Reference¶

class
($table, $field = array(), $_after = NULL)
Parameters:
  • $table (string) – Table name to add the column to
  • $field (array) – Column definition(s)
  • $_after (string) – Column for AFTER clause (deprecated)
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Adds a column to a table. Usage: See .

($field)
Parameters:
Returns:

CI_DB_forge instance (method chaining)

Return type:

CI_DB_forge

Adds a field to the set that will be used to create a table. Usage: See .

($key, $primary = FALSE)
Parameters:
  • $key (array) – Name of a key field
  • $primary (bool) – Set to TRUE if it should be a primary key or a regular one
Returns:

CI_DB_forge instance (method chaining)

Return type:

CI_DB_forge

Adds a key to the set that will be used to create a table. Usage: See .

($db_name)
Parameters:
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Creates a new database. Usage: See .

($table, $if_not_exists = FALSE, array $attributes = array())
Parameters:
  • $table (string) – Name of the table to create
  • $if_not_exists (string) – Set to TRUE to add an ‘IF NOT EXISTS’ clause
  • $attributes (string) – An associative array of table attributes
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Creates a new table. Usage: See .

($table, $column_name)
Parameters:
  • $table (string) – Table name
  • $column_name (array) – The column name to drop
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Drops a column from a table. Usage: See .

($db_name)
Parameters:
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Drops a database. Usage: See .

($table_name, $if_exists = FALSE)
Parameters:
  • $table (string) – Name of the table to drop
  • $if_exists (string) – Set to TRUE to add an ‘IF EXISTS’ clause
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Drops a table. Usage: See .

($table, $field)
Parameters:
  • $table (string) – Table name
  • $field (array) – Column definition(s)
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Modifies a table column. Usage: See .

($table_name, $new_table_name)
Parameters:
  • $table (string) – Current of the table
  • $new_table_name (string) – New name of the table
Returns:

TRUE on success, FALSE on failure

Return type:

bool

Renames a table. Usage: See .

Creating and Dropping Tables¶

There are several things you may wish to do when creating tables. Add
fields, add keys to the table, alter columns. CodeIgniter provides a
mechanism for this.

Fields are created via an associative array. Within the array you must
include a ‘type’ key that relates to the datatype of the field. For
example, INT, VARCHAR, TEXT, etc. Many datatypes (for example VARCHAR)
also require a ‘constraint’ key.

$fields = array(
        'users' => array(
                'type' => 'VARCHAR',
                'constraint' => '100',
        ),
);
// will translate to "users VARCHAR(100)" when the field is added.

Additionally, the following key/values can be used:

  • unsigned/true : to generate “UNSIGNED” in the field definition.
  • default/value : to generate a default value in the field definition.
  • null/true : to generate “NULL” in the field definition. Without this,
    the field will default to “NOT NULL”.
  • auto_increment/true : generates an auto_increment flag on the
    field. Note that the field type must be a type that supports this,
    such as integer.
  • unique/true : to generate a unique key for the field definition.
$fields = array(
        'blog_id' => array(
                'type' => 'INT',
                'constraint' => 5,
                'unsigned' => TRUE,
                'auto_increment' => TRUE
        ),
        'blog_title' => array(
                'type' => 'VARCHAR',
                'constraint' => '100',
                'unique' => TRUE,
        ),
        'blog_author' => array(
                'type' =>'VARCHAR',
                'constraint' => '100',
                'default' => 'King of Town',
        ),
        'blog_description' => array(
                'type' => 'TEXT',
                'null' => TRUE,
        ),
);

After the fields have been defined, they can be added using
followed by a call to the
method.

$this->dbforge->add_field()

The add fields method will accept the above array.

Passing strings as fields

If you know exactly how you want a field to be created, you can pass the
string into the field definitions with add_field()

$this->dbforge->add_field("label varchar(100) NOT NULL DEFAULT 'default label'");

Note

Passing raw strings as fields cannot be followed by calls on those fields.

Note

Multiple calls to add_field() are cumulative.

Creating an id field

There is a special exception for creating id fields. A field with type
id will automatically be assigned as an INT(9) auto_incrementing
Primary Key.

$this->dbforge->add_field('id');
// gives id INT(9) NOT NULL AUTO_INCREMENT

Generally speaking, you’ll want your table to have Keys. This is
accomplished with $this->dbforge->add_key(‘field’). An optional second
parameter set to TRUE will make it a primary key. Note that add_key()
must be followed by a call to create_table().

Multiple column non-primary keys must be sent as an array. Sample output
below is for MySQL.

$this->dbforge->add_key('blog_id', TRUE);
// gives PRIMARY KEY `blog_id` (`blog_id`)

$this->dbforge->add_key('blog_id', TRUE);
$this->dbforge->add_key('site_id', TRUE);
// gives PRIMARY KEY `blog_id_site_id` (`blog_id`, `site_id`)

$this->dbforge->add_key('blog_name');
// gives KEY `blog_name` (`blog_name`)

$this->dbforge->add_key(array('blog_name', 'blog_label'));
// gives KEY `blog_name_blog_label` (`blog_name`, `blog_label`)

After fields and keys have been declared, you can create a new table
with

$this->dbforge->create_table('table_name');
// gives CREATE TABLE table_name

An optional second parameter set to TRUE adds an “IF NOT EXISTS” clause
into the definition

$this->dbforge->create_table('table_name', TRUE);
// gives CREATE TABLE IF NOT EXISTS table_name

You could also pass optional table attributes, such as MySQL’s :

$attributes = array('ENGINE' => 'InnoDB');
$this->dbforge->create_table('table_name', FALSE, $attributes);
// produces: CREATE TABLE `table_name` (...) ENGINE = InnoDB DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

Note

Unless you specify the and/or attributes,
will always add them with your configured char_set
and dbcollat values, as long as they are not empty (MySQL only).

Execute a DROP TABLE statement and optionally add an IF EXISTS clause.

// Produces: DROP TABLE table_name
$this->dbforge->drop_table('table_name');

// Produces: DROP TABLE IF EXISTS table_name
$this->dbforge->drop_table('table_name',TRUE);

Обзор программы dbForge Studio for MySQL

DbForge Studio for MySQL является одним из самых универсальных продуктов для управления и создания баз данных для MySQL. Данная программа позволяет разработчикам и администраторам баз данных создавать запросы, выполнять их, вести разработку функций и процедур. Всё это выполнять в удобном пользовательском интерфейсе.

В данную программу встроен инструмент для сравнения и синхронизации данных между двумя базами, а также инструмент, который помогает создавать отчёты исходя из данных в таблицах MySQL.

Эта среда разработки баз данных MySQL поддерживает все версии серверов MariaDB и все типы данных, которые представлены в данных серверах.

Теперь давайте познакомимся с основными особенностями этой программы.

Интеллектуальная разработка SQL кода

Как и любой другой удобный редактор MySQL, dbForge Studio for MySQL имеет интеллектуальную среду разработки SQL-кода. Данная среда позволяет красиво выполнять форматирование кода, что в свою очередь делает написание SQL кода более удобным.

Сравнение и синхронизация БД

Во время внесения некоторых изменений в структуру баз данных MySQL приходит необходимость синхронизации данных изменений. За это отвечает встроенный инструмент, который позволяет не только сравнивать и синхронизировать данные и схемы, но также планировать задачи по синхронизации и генерировать отчёты по пройденным сравнениям.

Дизайнер запросов

Визуально создавать запросы намного легче, чем делать это в текстовом режиме. За визуальное создание запросов выступает удобный редактор выражений. Он позволяет создавать запросы от самых лёгких до самых сложных при этом использую минимум времени.

Импорт/экспорт данных

DbForge Studio for MySQL позволяет импортировать и экспортировать данные из внешних источников используя встроенный инструмент студии. MySQL менеджер поддерживает около 10ти популярных форматов для импорта/экспорта, а использование шаблонов позволяет значительно автоматизировать процесс экспорта/импорта.

Дизайнер баз данных

Данный дизайнер позволит с лёгкостью переделывать, создавать и анализировать базы данных. Наравне с этим он позволяет просматривать связи по внешним ключам, отображать свойства объектов баз и выполнять хранимые процедуры.

Администрирование баз данных

Программа имеет богатый набор средств администрирования, которые включает в себя: — менеджмент привилегиями и ролями пользователей — контроль сервисов MySQL — навигация по таблицами — управления сессиями

Отладчик MySQL

Одна из самых основных особенностей программы — это отладчик MySQL. Он предоставляет пошаговое выполнение кода, стек вызовов и точки останова. Отладчик сохраняет логику выполнения процедур, а также проводит отладку функций и триггеров MySQL.

Рефакторинг баз данных

Рефакторинг даёт возможность совершенствовать дизайн баз данных с помощью мелких изменений. Эти изменения полностью прозрачны и программа сама заботится о всех зависимостях в базе данных: переименование базы из проводника, переименование столбцов, просмотр скрипта рефакторинга.

Профилировщик запросов

Профилировщик позволяет совершенствовать структуру запросов, так как выполнение некоторых из них может занять много времени. Данный инструмент позволит найти и проанализировать проблемные места в запросе, тем самым дав возможность прооптимизировать его.

Отчеты и анализ данных

DbForge Studio for MySQL предоставляет удобную возможность создавать отчёты с большим набором функций. Созданные отчёты можно экспортировать в больше чем восемь форматов и отправлять получателям с помощью командной строки.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector