Подтвердить что ты не робот

Что эквивалентно "go" в MySQL?

В TSQL я могу указать:

insert into myTable (ID) values (5)
GO
select * from myTable

В MySQL я не могу написать тот же запрос.

Каков правильный способ написать этот запрос в MySQL?

4b9b3361

Ответ 1

Точка с запятой в конце строки.

INSERT INTO myTable (ID) values (5);

Ответ 2

Точка с запятой является разделителем по умолчанию. Тем не менее, вы можете переопределить его по своему желанию с помощью ключевого слова DELIMITER. Из руководства по MySQL:

mysql> delimiter //

mysql> CREATE PROCEDURE simpleproc (OUT param1 INT)
    -> BEGIN
    ->   SELECT COUNT(*) INTO param1 FROM t;
    -> END;
    -> //
Query OK, 0 rows affected (0.00 sec)

mysql> delimiter ;

mysql> CALL simpleproc(@a);
Query OK, 0 rows affected (0.00 sec)

Это, конечно, не ограничивается определениями хранимых процедур.

Ответ 3

Просто прост;

попробуйте

insert into myTable(ID) values (5);
select * from myTable;

Ответ 4

Я думаю, что проблема в том, что GO - это терминатор партии, а не терминатор термина. После явной установки транзакций я получил этот код, не сказав мне, что процедура уже существует. Без операторов транзакции я получаю сообщение об ошибке, что процедура уже существует.

начать транзакцию;   drop, если существует usp_test; совершить; начать транзакцию;   CREATE PROCEDURE usp_test() SELECT * из книг; совершить; вызовите usp_test();

Ответ 5

Используйте точку с запятой (;). Он отделит ваши заявления.