Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySql - Utwórz tabelę, jeśli nie istnieje. Obciąć?

shmuel613, lepiej byłoby zaktualizować swoje oryginalne pytanie niż odpowiadać. Najlepiej, jeśli całe pytanie jest w jednym miejscu, a nie w dyskusji.

Odpowiedź Bena jest rozsądna, z wyjątkiem tego, że wydaje się, że ma „nie”, gdy nie chce. Upuszczanie tabeli tylko wtedy, gdy nie istnieje nie jest całkiem w porządku.

Rzeczywiście będziesz potrzebować wielu oświadczeń. Warunkowo utwórz, a następnie wypełnij:

  1. UTWÓRZ TYMCZASOWĄ TABELĘ, JEŚLI NIE ISTNIEJE fubar ( id int, name varchar(80) )
  2. OBCIĄĆ TABELĘ fubar
  3. WSTAW DO fubar WYBIERZ * Z barfu

lub po prostu upuść i odtwórz

  1. UPUŚĆ TABELĘ, JEŚLI ISTNIEJE fubar
  2. UTWÓRZ TABELĘ TYMCZASOWĄ fubar SELECT id, nazwa FROM barfu

Z czystym SQL są to Twoje dwie prawdziwe klasy rozwiązań. Druga podoba mi się bardziej.

(Za pomocą procedury składowanej możesz zredukować to do pojedynczej instrukcji. Coś takiego:TruncateAndPopulate(fubar) Ale zanim napiszesz kod dla TruncateAndPopulate(), spędzisz więcej czasu niż tylko użycie powyższego 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. Zegar anulowania instrukcji MySQL w stanie oczekiwania w Grails 2.2.4 z pulą jdbc

  2. MySQL LOAD DATA LOKALNY INFILE Python

  3. nie mogę zapisać wielu tabel w cakephp

  4. Jak obliczyć współczynnik konwersji w MySQL?

  5. Jak rozwiązać błąd braku zapytania w czytniku danych?