Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL – Как да махна таблица, ако съществува в базата данни?

В тази публикация SQL Server – 2016 – T-SQL подобрение клауза „Отпадане, ако съществува“, видяхме новата функция, въведена в SQL Server версия 2016. Един от моите приятели наскоро ми зададе въпрос как да прехвърлям таблица, ако съществува в базата данни на MySQL? Не беше изненадващо да се види, че не много хора знаят за съществуването на тази функция. MySQL вече има тази функция от известно време и ако сте MySQL DBA, може да ви е интересно, че SQL Server току-що представи тази функция.

Нека видим този пример в действие сега. Първо, ще създадем примерна таблица.

CREATE TABLE test(id INT,name VARCHAR(100));

Ако трябва да пуснем над таблицата, можем да изпълним следния скрипт и да го пуснем.

DROP TABLE IF EXISTS test;

Горещият скрипт премахва таблицата с име test, ако съществува, в противен случай ще покаже предупреждение, а не грешка. Това е много важно, за да разберем, че тъй като не показва грешка, можем лесно да заобиколим предупреждението в нашия код. Това е полезно, ако не сте сигурни в съществуването на таблицата предварително.

Не само таблици, но и MySQL има подобна функция, достъпна и за съхранените процедури. Нека видим бърз пример за същото.

Ето скрипт, който можете да използвате за създаване на съхранени процедури.

CREATE PROCEDURE test_proc
AS
BEGIN
SELECT 1 AS number;
END;

След като създадете горната процедура, можете да използвате следния скрипт, за да я пуснете.

DROP PROCEDURE IF EXISTS test_proc;

Запомнете, точно като таблицата, тя ще изпусне съхранената процедура, ако има такава, в противен случай просто ще върне предупреждение. Наистина е интересно да се види, че MySQL вече има тази функция от известно време, докато SQL Server току-що представи тази функция през тази година.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да оптимизирам функцията ORDER BY RAND() на MySQL?

  2. Филтриране по COUNT(*)?

  3. MySQL 'Поръчай по' - правилно сортиране на букви и цифри

  4. Как мога да се свържа с MySQL в Python 3 на Windows?

  5. Mysql заявка за динамично преобразуване на редове в колони на базата на две колони