mysql怎麼把資料匯入進去

2020-10-05 15:00:45

mysql把資料匯入的方法:1、使用「mysql -u使用者名稱 -p密碼 < sql檔案」語句匯入資料;2、使用「source sql檔案的路徑」語句匯入資料;3、使用mysqlimport匯入資料。

1、mysql 命令匯入

使用 mysql 命令匯入語法格式為:

mysql -u使用者名稱    -p密碼    <  要匯入的資料庫資料sql檔案

範例:

# mysql -uroot -p123456 < student.sql

以上命令將將備份的整個資料庫 student.sql 匯入。

2、source 命令匯入

source 命令匯入資料庫需要先登入到數庫終端:

mysql> create database abc;      # 建立資料庫
mysql> use abc;                  # 使用已建立的資料庫 
mysql> set names utf8;           # 設定編碼
mysql> source /home/abc/abc.sql  # 匯入備份資料庫

3、使用 LOAD DATA 匯入資料

MySQL 中提供了LOAD DATA INFILE語句來插入資料。 以下範例中將從當前目錄中讀取檔案 dump.txt ,將該檔案中的資料插入到當前資料庫的 mytbl 表中。

mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl;

 如果指定LOCAL關鍵詞,則表明從客戶主機上按路徑讀取檔案。如果沒有指定,則檔案在伺服器上按路徑讀取檔案。

你能明確地在LOAD DATA語句中指出列值的分隔符和行尾標記,但是預設標記是定位符和換行符。

兩個命令的 FIELDS 和 LINES 子句的語法是一樣的。兩個子句都是可選的,但是如果兩個同時被指定,FIELDS 子句必須出現在 LINES 子句之前。

如果使用者指定一個 FIELDS 子句,它的子句 (TERMINATED BY、[OPTIONALLY] ENCLOSED BY 和 ESCAPED BY) 也是可選的,不過,使用者必須至少指定它們中的一個。

mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl
  -> FIELDS TERMINATED BY ':'
  -> LINES TERMINATED BY '\r\n';

LOAD DATA 預設情況下是按照資料檔案中列的順序插入資料的,如果資料檔案中的列與插入表中的列不一致,則需要指定列的順序。

如,在資料檔案中的列順序是 a,b,c,但在插入表的列順序為b,c,a,則資料匯入語法如下:

mysql> LOAD DATA LOCAL INFILE 'dump.txt' 
    -> INTO TABLE mytbl (b, c, a);

4、使用 mysqlimport 匯入資料

mysqlimport 使用者端提供了 LOAD DATA INFILEQL 語句的一個命令列介面。mysqlimport 的大多數選項直接對應 LOAD DATA INFILE 子句。

從檔案 dump.txt 中將資料匯入到 mytbl 資料表中, 可以使用以下命令:

$ mysqlimport -u root -p --local mytbl dump.txt
password *****

mysqlimport 命令可以指定選項來設定指定格式,命令語句格式如下:

$ mysqlimport -u root -p --local --fields-terminated-by=":" \
   --lines-terminated-by="\r\n"  mytbl dump.txt
password *****

mysqlimport 語句中使用 --columns 選項來設定列的順序:

$ mysqlimport -u root -p --local --columns=b,c,a \
    mytbl dump.txt
password *****

推薦教學:

以上就是mysql怎麼把資料匯入進去的詳細內容,更多請關注TW511.COM其它相關文章!