2009-04-20 42 views
52

Tôi cần sao chép một bảng trong MySQL, làm cho bảng mới trống. Tức là, tôi chỉ cần sao chép cấu trúc của bảng hiện có sang bảng mới.MySQL - Bảng trùng lặp

Trả lời

76

Thử cú pháp tạo bảng LIKE.

create table users2 like users; 

Điều này sẽ cung cấp cho bạn một bảng trống (users2) có cấu trúc giống với bản gốc (người dùng).

+0

nhờ thưa ông nhưng làm thế nào về việc tạo ra cùng một bảng và thay đổi loại bảng từ InnoDB để MyISAM tại cùng lúc? – GianFS

+4

Bạn sẽ phải thực hiện điều đó theo hai bước - hoặc chạy một 'SHOW CREATE TABLE' và sửa đổi kết quả đầu ra cho phù hợp với bạn, hoặc chạy' CREATE TABLE LIKE' theo sau là 'ALTER TABLE'. – Brilliand

17

Ngoài ra còn có một cách khác để tạo ra một bảng trống như bảng hiện có và bạn có thể sử dụng lệnh sau đây cũng

create table a select * from users2 limit 0, 0; 
+3

hoặc 'TẠO BẢNG CHỌN * TỪ b Ở ĐÂU 0 = 1' –

+1

Chỉ cần thông tin: làm điều này sẽ KHÔNG sao chép các chỉ mục. –

Các vấn đề liên quan