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

MySql - Създаване на таблица, ако не съществува Друго съкращаване?

shmuel613, би било по-добре да актуализираш първоначалния си въпрос, вместо да отговаряш. Най-добре е да има едно място, съдържащо пълния въпрос, вместо да бъде разпръснат в дискусия.

Отговорът на Бен е разумен, но изглежда, че има „не“ там, където не иска. Пускане на масата само ако не се съществува не е съвсем правилно.

Наистина ще ви трябват множество изявления. Или създайте условно, след което попълнете:

  1. СЪЗДАВАНЕ НА ВРЕМЕННА ТАБЛИЦА, АКО НЕ СЪЩЕСТВУВА fubar ( id int, name varchar(80) )
  2. TRUNCATE TABLE fubar
  3. INSERT INTO fubar SELECT * FROM barfu

или просто пуснете и създайте отново

  1. ПУСКАНЕ НА ТАБЛИЦАТА, АКО СЪЩЕСТВУВА fubar
  2. CREATE TEMPORARY TABLE fubar SELECT id, name FROM barfu

С чист SQL това са вашите два реални класа решения. Второто ми харесва повече.

(Със съхранена процедура можете да я намалите до един оператор. Нещо като:TruncateAndPopulate(fubar) Но докато напишете кода за TruncateAndPopulate(), ще отделите повече време, отколкото просто да използвате SQL по-горе.)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL RAND() Функция – Генериране на произволно число в MySQL

  2. Най-добрият тип данни за съхраняване на парични стойности в MySQL

  3. Модел за глобални настройки на Laravel

  4. Избиране на подмножество от редове от PHP таблица

  5. Псевдоним за показване на таблици MySQL резултат