Làm thế nào tôi có thể sao chép một bảng trong mysql?
Có thể xảy ra tình huống khi bạn cần một bản sao chính xác của bảng và TẠO BẢNG. CHỌN không phù hợp với mục đích của bạn vì bản sao phải bao gồm cùng các chỉ mục, giá trị mặc định, v.v. Show Bạn có thể xử lý tình huống này bằng cách thực hiện theo các bước dưới đây -
Thí dụHãy thử ví dụ sau để tạo bảng nhân bản cho tutorials_tbl Bước 1 - Nhận cấu trúc hoàn chỉnh về bảng mysql> SHOW CREATE TABLE tutorials_tbl \G; *************************** 1. row *************************** Table: tutorials_tbl Create Table: CREATE TABLE `tutorials_tbl` ( `tutorial_id` int(11) NOT NULL auto_increment, `tutorial_title` varchar(100) NOT NULL default '', `tutorial_author` varchar(40) NOT NULL default '', `submission_date` date default NULL, PRIMARY KEY (`tutorial_id`), UNIQUE KEY `AUTHOR_INDEX` (`tutorial_author`) ) TYPE = MyISAM 1 row in set (0.00 sec) ERROR: No query specified Bước 2 - Đổi tên bảng này và tạo một bảng khác mysql> CREATE TABLE clone_tbl ( -> tutorial_id int(11) NOT NULL auto_increment, -> tutorial_title varchar(100) NOT NULL default '', -> tutorial_author varchar(40) NOT NULL default '', -> submission_date date default NULL, -> PRIMARY KEY (tutorial_id), -> UNIQUE KEY AUTHOR_INDEX (tutorial_author) -> ) TYPE = MyISAM; Query OK, 0 rows affected (1.80 sec) Bước 3 - Sau khi thực hiện bước 2, bạn sẽ tạo một bảng nhân bản trong cơ sở dữ liệu của mình. Nếu bạn muốn sao chép dữ liệu từ bảng cũ thì bạn có thể thực hiện bằng cách sử dụng INSERT INTO. câu lệnh CHỌN Hướng dẫn này sẽ giới thiệu cách sao chép một bảng từ cơ sở dữ liệu sang một bảng khác bằng cách sử dụng các mệnh đề CREATE và SELECT của MySQL Trường hợp sử dụngTrường hợp đầu tiên chúng ta cần sao chép bảng là sao chép dữ liệu cụ thể từ bảng hiện có sang bảng mới. Ví dụ: trong cơ sở dữ liệu mẫu Sakila, chúng tôi có thể sao chép thông tin cụ thể từ bảng phim sang một bảng mới có tên là film_revised Hãy xem xét truy vấn bên dưới để thực hiện thao tác như vậy TẠO CƠ SỞ DỮ LIỆU copy_tb; Khi truy vấn trên thực thi, chúng ta có thể xem dữ liệu được lưu trữ trong bảng bằng cách sử dụng câu lệnh chọn của MySQL như được hiển thị trong đầu ra bên dưới mysql> CHỌN * TỪ film_revised GIỚI HẠN 10; Như bạn có thể thấy, chúng ta có thể tạo các bảng mới với thông tin được chọn từ các bảng hiện có mà không làm thay đổi dữ liệu trong cơ sở dữ liệu gốc GHI CHÚ. Sao chép một bảng bằng cách sử dụng các câu lệnh CREATE TABLE và SELECT chỉ sao chép bảng và dữ liệu của nó. Nó không sao chép các đối tượng như chỉ mục, trình kích hoạt, ràng buộc khóa chính, v.v. , được kết nối với bảng gốc Sao chép Bảng + Đối tượngĐể sao chép bảng + dữ liệu và tất cả các đối tượng liên quan, chúng ta sử dụng câu lệnh LIKE theo sau là câu lệnh INSERT như minh họa trong truy vấn bên dưới TẠO BẢNG film_copy THÍCH sakila. phim; Truy vấn trên sẽ sao chép mọi thứ từ bảng gốc sang bảng mới, bao gồm chỉ mục, khóa chính, ràng buộc và các đối tượng khác được kết nối với bảng gốc GHI CHÚ. Hãy cẩn thận khi sử dụng các câu lệnh sao chép trên các bảng lớn vì chúng có thể sử dụng nhiều tài nguyên hơn và mất nhiều thời gian để hoàn thành Sao chép bảng từ cơ sở dữ liệu riêng biệtNếu bạn cần sao chép một bảng từ các cơ sở dữ liệu khác nhau, bạn có thể tham chiếu cơ sở dữ liệu bằng cách sử dụng dấu chấm (. ) ký hiệu Ví dụ: bắt đầu bằng cách tạo một cơ sở dữ liệu mới dưới dạng TẠO CƠ SỞ DỮ LIỆU NẾU KHÔNG TỒN TẠI multi_db; Tiếp theo, sử dụng cú pháp được hiển thị trước đó để sao chép bảng từ cơ sở dữ liệu cũ sang cơ sở dữ liệu mới. Xem truy vấn bên dưới TẠO BẢNG multi_db. new_tb THÍCH sakila. phim; Thao tác này sẽ sao chép bảng phim bảng từ cơ sở dữ liệu Sakila sang cơ sở dữ liệu mới và hiển thị đầu ra như hình bên dưới Truy vấn OK, 1000 hàng bị ảnh hưởng (0. 03 giây) Bạn có thể sử dụng câu lệnh SELECT để xác minh dữ liệu đã được sao chép thành công Sự kết luậnHướng dẫn nhanh này đã giới thiệu cách sử dụng các câu lệnh CREATE TABLE và SELECT của MySQL để sao chép các cột cụ thể từ một bảng sang một bảng mới Chúng tôi cũng đã xem xét cách sao chép tất cả dữ liệu, bao gồm các đối tượng được liên kết với bảng gốc, sang một bảng mới Truy vấn MySQL để tạo bảng trùng lặp trong MySQL là gì?Sao chép/Sao chép/Sao chép bảng MySQL . TẠO BẢNG new_table_name CHỌN cột1, cột2, cột3 TỪ tên_bảng hiện có; Làm cách nào để sao chép một bảng trong SQL Server?Mở cơ sở dữ liệu trong SQL Management Studio. Nhấp chuột phải vào bảng mà bạn muốn sao chép. Chọn Bảng tập lệnh dưới dạng -> Tạo thành -> Cửa sổ Trình soạn thảo truy vấn mới. Thao tác này sẽ tạo tập lệnh để tạo lại bảng trong cửa sổ truy vấn mới |