91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL表數據的導入與導出方法

發布時間:2021-08-19 23:14:29 來源:億速云 閱讀:142 作者:chen 欄目:MySQL數據庫

本篇內容介紹了“MySQL表數據的導入與導出方法”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

LOAD DATA INFILE

LOAD DATA INFILE語句可以快速將文本記錄導入到表中, SELECT ... INTO OUTFILE可以將表中數據導入到文件中,兩者的FIELDS、LINES子句語法相同。
執行語句的用戶需要有FILE權限,且mysql用戶對數據文件可讀。
mysqlimport也可以實現將文本文件導入到表中,mysqlimport也是向服務器調用LOAD DATA INFILE語句,--local選項可以讀取客戶端的文件。

LOAD DATA INFILE語法如下:

LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name'
    [REPLACE | IGNORE]
    INTO TABLE tbl_name
    [PARTITION (partition_name,...)]
    [CHARACTER SET charset_name]
    [{FIELDS | COLUMNS}
        [TERMINATED BY 'string']
        [[OPTIONALLY] ENCLOSED BY 'char']
        [ESCAPED BY 'char']
    ]
    [LINES
        [STARTING BY 'string']
        [TERMINATED BY 'string']
    ]
    [IGNORE number {LINES | ROWS}]
    [(col_name_or_user_var,...)]
    [SET col_name = expr,...]
  • LOCAL
    當指定local時,客戶端將讀取文件發送到服務器操作系統的臨時目錄(非MySQL臨時目錄),如空間不如將導致執行失敗。如未指定local,則會從服務器讀取,相對路徑是相對于data_dir的路徑。

    LOAD DATA INFILE:當數據非法或數據唯一索引沖突將導致執行失敗。
    LOAD DATA LOCAL INFILE:因為服務器端無法終止客戶端文件發送,當數據非法或數據唯一索引沖突時將會警告忽略錯誤繼續,類似IGNORE。
  • REPLACE
    出現數據唯一索引沖突將會替代現有的記錄

  • IGNORE
    出現數據唯一索引沖突將會被忽略。如果IGNORE與REPLACE都沒指定,則取決于LOCAL選項。如果local也沒有指定,則重復數據之后的文件數據將被不會執行,如指定local,則會忽略沖突繼續執行。

  • IGNORE number LINES
    指定跳過文件開頭的幾行記錄

LOAD DATA INFILE用法:

默認load data infile的格式(不指定FIELDS,LINES選項)
FIELDS TERMINATED BY '\t'
       ENCLOSED BY ''
       ESCAPED BY '\\'
LINES TERMINATED BY '\n'
STARTING BY ''

導入csv文件
LOAD DATA INFILE 'data.txt' INTO TABLE tbl_name
  FIELDS TERMINATED BY ',' ENCLOSED BY '"'
  LINES TERMINATED BY '\r\n'
  IGNORE 1 LINES;

導入包含指定列的文件
LOAD DATA INFILE 'data.txt' INTO TABLE tbl_name
  FIELDS TERMINATED BY ','
  (column2,column3);

導入文件設定指定列的值
LOAD DATA INFILE 'data.txt' INTO TABLE tbl_name
  FIELDS TERMINATED BY ','
  (column1,column2)
  set column3 = CURRENT_TIMESTAMP;;

SELECT ... INTO OUTFILE

SELECT ... INTO OUTFILE會將查詢結果寫入到服務器,因此需要有FILE權限,同時需要對指定的路徑有寫入權限,且指定文件不能是服務器已有文件。
客戶端生成指定結果文件可使用mysql -e "SELECT ..." > file_name

SELECT ... INTO OUTFILE與LOAD DATA INFILE的FIELDS、LINES子句語法相同。

OPTION選項含義如下:

  • FIELDS TERMINATED BY 'value'
    設置字段之間的分隔字符,可以為單個或多個字符,默認為制表符'\t'

  • FIELDS [OPTIONALLY] ENCLOSED BY 'value'
    設置字段的包圍字符,只能為單個字符

  • FIELDS ESCAPED BY 'value'
    設置轉義字符,只能為單個字符,默認值為‘\’

  • LINES STARTING BY 'value'
    設置每行數據開頭的字符,可以為單個或多個字符,默認情況下不使用任何字符

  • LINES TERMINATED BY 'value'
    設置每行數據結尾的字符,可以為單個或多個字符,默認值為'\n',WINDOWS回車換行符為'\r\n'

導出csv格式的文件
SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt'
  FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
  LINES TERMINATED BY '\n'
  FROM test_table;

mysqldump -T path dbname tbl_name 也可以生成文本文件,在path目錄生成一個tbl_name.sql表定義文件和tbl_name.txt文件表數據文件,可以指定fields與lines選項指定生成數據文件的格式。

“MySQL表數據的導入與導出方法”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

星子县| 阳东县| 嘉兴市| 怀仁县| 华容县| 乐陵市| 友谊县| 甘泉县| 临高县| 平塘县| 宜阳县| 临夏县| 建平县| 普兰县| 衢州市| 邵阳市| 来安县| 曲靖市| 定结县| 达拉特旗| 中江县| 克拉玛依市| 界首市| 巨野县| 宣威市| 永德县| 阿克陶县| 汾阳市| 伊吾县| 林周县| 大名县| 孟津县| 德兴市| 砀山县| 固安县| 尖扎县| 丹棱县| 全南县| 德钦县| 朝阳县| 重庆市|