在數(shù)據(jù)管理中,我們常常需要將數(shù)據(jù)從一個(gè)數(shù)據(jù)庫(kù)轉(zhuǎn)移到另一個(gè)數(shù)據(jù)庫(kù)。本文將介紹如何將 MS SQL Server 中的數(shù)據(jù)導(dǎo)入到 MySQL 數(shù)據(jù)庫(kù)中。
步驟如下:
1. 確定目標(biāo) MySQL 數(shù)據(jù)庫(kù)和表的結(jié)構(gòu)。 2. 使用 SQL Server Management Studio 導(dǎo)出 MS SQL Server 數(shù)據(jù)庫(kù)中的數(shù)據(jù)到 CSV 文件中。 3. 將 CSV 文件轉(zhuǎn)換為 MySQL 數(shù)據(jù)庫(kù)支持的格式,比如將","分隔符改為"\t"或其他符號(hào),并將數(shù)據(jù)編碼為 UTF-8 格式。 4. 使用 LOAD DATA INFILE 命令將 CSV 文件中的數(shù)據(jù)導(dǎo)入到 MySQL 數(shù)據(jù)庫(kù)中。
下面詳細(xì)介紹每步操作:
1. 使用 CREATE TABLE 命令在 MySQL 數(shù)據(jù)庫(kù)中創(chuàng)建對(duì)應(yīng)的表結(jié)構(gòu),保證表結(jié)構(gòu)與 MS SQL Server 中的表結(jié)構(gòu)一致。如下所示: CREATE TABLE `table`( `id` INT NOT NULL AUTO_INCREMENT, `name` VARCHAR(50) NOT NULL, `age` INT NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; 2. 使用 SQL Server Management Studio 工具訪(fǎng)問(wèn) MS SQL Server 中的數(shù)據(jù)庫(kù),并執(zhí)行下面的命令將數(shù)據(jù)導(dǎo)出到 CSV 文件中,命令如下: SELECT * FROM table INTO OUTFILE 'D:\table.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n'; 3. 使用記事本或其他文本編輯器打開(kāi)導(dǎo)出的 CSV 文件,并將分隔符、編碼等修改為 MySQL 數(shù)據(jù)庫(kù)支持的格式。比如將原本的","分隔符改為"\t"分隔符,將編碼修改為 UTF-8 格式。 4. 使用 LOAD DATA INFILE 命令將 CSV 文件中的數(shù)據(jù)導(dǎo)入到 MySQL 數(shù)據(jù)庫(kù)中。命令如下: LOAD DATA INFILE 'D:\table.csv' INTO TABLE `table` FIELDS TERMINATED BY '\t' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n'; 其中,F(xiàn)IELDS TERMINATED BY '\t' 選項(xiàng)表示使用"\t"分隔符作為字段分隔符,OPTIONALLY ENCLOSED BY '"' 選項(xiàng)表示字段可以使用雙引號(hào)引用,LINES TERMINATED BY '\n' 選項(xiàng)表示記錄使用"\n"作為行分隔符。 至此,我們成功將 MS SQL Server 中的數(shù)據(jù)導(dǎo)入到 MySQL 數(shù)據(jù)庫(kù)中。