Я використовую MySQL. У мене є таблиця під назвою EMP, і тепер мені потрібно створити ще одну таблицю (EMP_TWO) з однаковою схемою, однаковими стовпцями та однаковими обмеженнями. Як я можу це зробити?
Я використовую MySQL. У мене є таблиця під назвою EMP, і тепер мені потрібно створити ще одну таблицю (EMP_TWO) з однаковою схемою, однаковими стовпцями та однаковими обмеженнями. Як я можу це зробити?
Відповіді:
Щоб створити нову таблицю на основі іншої структури / обмежень таблиць, використовуйте:
CREATE TABLE new_table LIKE old_table;
Щоб скопіювати дані, якщо потрібно, використовуйте
INSERT INTO new_table SELECT * FROM old_table;
Створення табличних документів
Остерігайтеся приміток щодо опції LIKE:
Використовуйте LIKE для створення порожньої таблиці на основі визначення іншої таблиці, включаючи будь-які атрибути стовпців та індекси, визначені у вихідній таблиці:
СТВОРИТИ ТАБЛИЦЮ new_table ЯК оригінальну_таблицю; Копія створюється з використанням тієї ж версії формату зберігання таблиці, що і вихідна таблиця. Привілей SELECT потрібно в оригінальній таблиці.
LIKE працює лише для базових таблиць, а не для подань.
СТВОРИТИ ТАБЛИЦЮ ... LIKE не зберігає жодних параметрів таблиці ДАНИХ ДІЯЛЬНОСТІ або ІНДЕКСНОГО ДОВІДНИКА, які були вказані для вихідної таблиці, або будь-яких визначень зовнішнього ключа.
LIKEу CREATEзаяві.
CREATE TABLE new_db.new_table LIKE old_db.old_table:)
Чому б вам не піти так
CREATE TABLE new_table LIKE Select * from Old_Table;
або Ви можете відфільтрувати такі дані
CREATE TABLE new_table LIKE Select column1, column2, column3 from Old_Table where column1 = Value1;
Для того, щоб у вашій новій таблиці спочатку було таке ж обмеження, вам доведеться створити схему, а потім слід звернутися за даними для створення схеми
CREATE TABLE new_table LIKE Some_other_Table;
likeі select *одне твердження? я отримую помилку. Також , будь ласка , перевірте цю відповідь stackoverflow.com/questions/10147565/create-table-like-a1-as-a2