Makale Rehberi
MySQL veritabanında tablo yapısı nasıl kopyalanır ? Tablo verilerini kopyalamak için hangi ifadeler kullanılır?
MySQLTabloyu kopyala
MySQL tablosunu yapısı, indeksleri, varsayılan değerleri vb. dahil olmak üzere tamamen kopyalamamız gerekiyorsa, bu işlem yalnızca `CREATE TABLE … SELECT` komutu kullanılarak gerçekleştirilemez .
Bu bölüm MySQL veri tablolarının nasıl tamamen kopyalanacağını tanıtacaktır, adımlar aşağıdaki gibidir:
- 使用TABLO OLUŞTURkomutu get datatable oluştur (TABLO OLUŞTUR) orijinal veri tablosunun yapısını, indeksini vb. içeren ifade.
- Aşağıdaki komutla görüntülenen SQL ifadesini kopyalayın, veri tablosu adını değiştirin ve SQL ifadesini çalıştırın.Veri tablosu yapısı yukarıdaki komutla tamamen kopyalanacaktır.
- Tablonun içeriğini kopyalamak istiyorsanız, kullanabilirsiniz.İÇİNE YERLEŞTİRİN … SEÇİN ulaşmak için yapılan açıklama.
Örnek
chenweiliang_tbl tablosunu çoğaltmak için aşağıdaki örneği deneyin.
步骤 一:
Veri tablosunun tam yapısını alın.
mysql > SHOW CREATE TABLE chenweiliang_tbl \ G ; *************************** 1. row ******************** ******* Table :chenweiliang_tbl Create Table :CREATE TABLE`chenweiliang_tbl` (`chenweiliang_id` int (11 )NOT NULL auto_increment ,`chenweiliang_title` varchar (100 )NOT NULL default '' ,'chenweiliang_author` varchar (40 )NOT NULL 默认'' , `submission_date` 日期默认NULL , PRIMARY KEY (`chenweiliang_id` ), UNIQUE KEY `AUTHOR_INDEX` (`chenweiliang_author` ))ENGINE = InnoDB的1 行中集合(0.00 秒) 错误:没有指定查询
步骤 二:
SQL ifadesinin veri tablosu adını değiştirin ve SQL ifadesini çalıştırın.
mysql > CREATE TABLE`clone_tbl` (- > `chenweiliang_id` int (11 )NOT NULL auto_increment ,- > `chenweiliang_title` varchar (100 )NOT NULL default '' ,- > `chenweiliang_author` varchar (40 )NOT NULL default '' ,- > `submission_date` 日期默认为NULL ,- > PRIMARY KEY (`chenweiliang_id` ),- > UNIQUE KEY `AUTHOR_INDEX` (`chenweiliang_author` )- > )ENGINE = InnoDB ; 查询OK ,0 行受影响(1.80 秒)
步骤 三:
İkinci adımı tamamladıktan sonra, veritabanında clone_tbl adında yeni bir klon tablo oluşturacaksınız. Tablodan veri kopyalamak istiyorsanız, INSERT INTO … SELECT ifadesini kullanabilirsiniz.
mysql > INSERT INTO clone_tbl (chenweiliang_id ,- > chenweiliang_title ,- > chenweiliang_author ,- > submission_date )- > SELECT chenweiliang_id ,chenweiliang_title ,- > chenweiliang_author ,submission_date - > FROM chenweiliang_tbl ; 查询OK ,3 行受影响(0.07 秒)记录:3 重复:0 警告:0
Yukarıdaki adımları gerçekleştirdikten sonra, tablo yapısı ve tablo verileri de dahil olmak üzere tablonun eksiksiz bir kopyasına sahip olacaksınız.
Tablo kopyalamanın başka bir yolu
Tablonun tam bir kopyasını almanın başka bir yolu:
CREATE TABLE targetTable LIKE sourceTable ; INSERT INTO targetTable SELECT * FROM sourceTable ;
Diğer:
Bu alanlardan bazılarını bir tabloya kopyalayabilirsiniz:
CREATE TABLE newadmin AS ( SELECT用户名,密码从管理员 )
Yeni oluşturulan tablonun alanlarını yeniden adlandırabilirsiniz:
CREATE TABLE newadmin AS ( SELECT id ,username AS uname ,password AS pass FROM admin )
Verilerin bir kısmı kopyalanabilir:
CREATE TABLE newadmin AS ( SELECT * FROM admin WHERE LEFT (username ,1 )= 's' )
Tablo oluşturulurken tablodaki alan bilgileri tanımlanabilir:
CREATE TABLE newadmin ( id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY ) 如 ( SELECT * FROM admin )
Umarım Chen Weiliang'ın blogunda ( https://www.chenweiliang.com/ ) paylaşılan "MySQL veritabanında tablo yapısını nasıl kopyalarım? Tablo verilerini kopyalamak için kullanılan ifadeler" başlıklı makale size yardımcı olur.
Bu makalenin bağlantısını paylaşmaktan çekinmeyin: https://www.chenweiliang.com/cwl-490.html
