Spec-Zone.ru › MySQL Workbench

8.1.11.1 Генерация SQL-запросов

MySQL Workbench может использоваться для генерации SQL-запросов, чаще всего в виде заявлений INSERT или SELECT.

Ниже приведены распространенные методы генерации SQL-запросов в MySQL Workbench.

Примечание

Все параметры экспорта MySQL Workbench включают возможность экспорта в формате SQL.

Опции контекстного меню после щелчка правой кнопкой мыши по schema в представлении схемы, используя sakila столбец в качестве примера.

Запрос создания

CREATE DATABASE `sakila` /*!40100 DEFAULT CHARACTER SET latin1 */;

Имя

`sakila`

Опции контекстного меню после щелчка правой кнопкой мыши по table в представлении схемы, используя sakila.actor столбец в качестве примера:

Имя (краткое)

`actor`

Имя (полное)

`sakila`.`actor`

Запрос выбора всех

SELECT `actor`.`actor_id`,
    `actor`.`first_name`,
    `actor`.`last_name`,
    `actor`.`last_update`
FROM `sakila`.`actor`;

Выбор со ссылками

SET @actor_id_to_select = <{row_id}>;
SELECT film_actor.*
    FROM film_actor, actor
    WHERE `actor`.`actor_id` = `film_actor`.`actor_id`
          AND actor.actor_id = @actor_id_to_select;
SELECT actor.*
    FROM actor
    WHERE actor.actor_id = @actor_id_to_select;

Запрос вставки

INSERT INTO `sakila`.`actor`
  (`actor_id`,
  `first_name`,
  `last_name`,
  `last_update`)
VALUES
  (<{actor_id: }>,
  <{first_name: }>,
  <{last_name: }>,
  <{last_update: CURRENT_TIMESTAMP}>);

Запрос обновления

UPDATE `sakila`.`actor`
SET
`actor_id` = <{actor_id: }>,
`first_name` = <{first_name: }>,
`last_name` = <{last_name: }>,
`last_update` = <{last_update: CURRENT_TIMESTAMP}>
WHERE `actor_id` = <{expr}>;

Запрос удаления

DELETE FROM `sakila`.`actor`
WHERE <{where_expression}>;

Удаление со ссылками


-- All objects that reference that row (directly or indirectly)
-- will be deleted when this snippet is executed.
-- To preview the rows to be deleted, use Select Row Dependencies
START TRANSACTION;
-- Provide the values of the primary key of the row to delete.
SET @actor_id_to_delete = <{row_id}>;

DELETE FROM film_actor
    USING film_actor, actor
    WHERE `actor`.`actor_id` = `film_actor`.`actor_id`
          AND actor.actor_id = @actor_id_to_delete;
DELETE FROM actor
    USING actor
    WHERE actor.actor_id = @actor_id_to_delete;
COMMIT;


Запрос создания

CREATE TABLE `actor` (
  `actor_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
  `first_name` varchar(45) NOT NULL,
  `last_name` varchar(45) NOT NULL,
  `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`actor_id`),
  KEY `idx_actor_last_name` (`last_name`)
) ENGINE=InnoDB AUTO_INCREMENT=201 DEFAULT CHARSET=utf8;

Опции контекстного меню после щелчка правой кнопкой мыши по column в представлении схемы, используя sakila.actor.first_name столбец в качестве примера:

Имя (короткое)

`first_name`

Имя (полное)

`actor`.`first_name`

Запрос столбцов выбора

SELECT `first_name` FROM `sakila`.`actor`;

Запрос вставки

INSERT INTO `sakila`.`actor`
(`first_name`)
VALUES
(<{first_name}>);

Запрос обновления

UPDATE `sakila`.`actor`
SET
`first_name` = <{first_name}>
WHERE <{where_expression}>;

Опции контекстного меню после щелчка правой кнопкой мыши по field в представлении результатов, используя запись №1 в таблице sakila.actor в качестве примера:

Копировать строки (с именами)

# actor_id, first_name, last_name, last_update
'1', 'PENELOPE', 'GUINESS', '2006-02-15 04:34:33'

Копировать строки (с именами, без кавычек)

# actor_id, first_name, last_name, last_update
1, PENELOPE, GUINESS, 2006-02-15 04:34:33

Копировать строку (разделенные табуляцией)

1	PENELOPE	GUINESS	2006-02-15 04:34:33

Копировать поле

'GUINESS'

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/workbench-en/wb-generating-sql.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API