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

Създавайте таблици с динамични имена чрез съхранена процедура

Не можете да замените име на таблица с ? в изготвено изявление и след това накарайте execute да вмъкне името на таблицата.

Имената на динамични таблици обикновено са лоша идея :по-добре е да направите 1 голяма таблица и да добавите допълнителна (индексирана) колона за "име на виртуална таблица".

Ако наистина имате нужда от динамични таблици, ще трябва да свържете името на таблицата в PREPARE себе си.

Плюсите и минусите на динамичните имена на таблици

Да предположим, че вместо да поставим всички потребители в една таблица, users с колони ID , Name , e-mail , country , ... , поставяте ги в динамични таблици, users_country , с колони ID , Name , e-mail , ...

  • Не можете лесно да заявите всички таблици. Да речем, че искате да знаете колко от вашите потребители са мъже - трябва да направите заявка за всяка таблица и да ОБЪЕДИТЕ резултатите. Няма да е по-бързо.

  • Все пак можете физически да разделите таблиците с помощта на PARTITIONS, но логическият ви изглед е все същият. Всяко предимство, което смятате, че имате с помощта на отделни таблици, обикновено може да бъде постигнато чрез друг метод.




  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 Проверете дали таблицата съществува грешка

  2. Изключение за Grails и MySQL връзка

  3. MySQL пускане на множество колони

  4. MySQL char спрямо int

  5. Проверка дали има данни в базата данни