如何向mysql導入數據

2020-12-05 day數據處理與分析

一、導入.sql文件

1.mysql命令導入數據

基本語法:mysql -h伺服器地址 -u用戶名 -p 資料庫名< 要導入的資料庫文件路徑

例:導入G:/mydb.sql

2.source命令導入數據

基本語法:source 資料庫文件路徑;

例:導入G:/mydb2.sql

二、導入.csv/.txt文件

1.load data 導入數據

基本語法

load data [low_priority] [local] infile 'file_name txt' [replace|ignore]

into table tbl_name

[fields

[terminated by'\t']

[optionally] enclosed by '']

[escaped by'\' ]]

[lines terminated by '\n']

[ignore n lines]

[(col_name, )]

low_priority:load data語句的執行被推遲到沒有其他客戶讀取表之後。

local:從客戶主機上按路徑讀取文件。若省略,則文件在伺服器上按路徑讀取文件。

replace|ignore:控制對現有的唯一鍵記錄的重複的處理。若指定replace,刪除原有行,插入新行。若指定ignore,則保留原有行,跳過相同值的新行。若不指定,則找到重複鍵值時,出現一個錯誤,且文本文件的餘下部分將被忽略。

fields terminated by:指定欄位間的分隔符,默認'\t'。

lines terminated by:指定每行結尾的字符,默認'\n'。

如果fields和lines兩個同時被指定,fields必須在lines之前。

fields [optionally] enclosed by:指定欄位包圍字符,若省略optionally,則所有的欄位由enclosed by字符包圍,反之,則enclosed by字符僅被用於包圍char和varchar欄位。

fields escaped by:指定轉義字符,默認'\'

ignore n lines:忽視文件的前幾行

(col_name, ):指定插入數據時表中列的順序,若省略,則按默認順序插入數據。

例:向user表插入文件'G:/用戶表.txt'中數據。

用戶表.txt中數據如下:

數據導入:

註:character set utf8/gbk這個字符集必須要寫,若省略,可能會出現亂碼或者只導入一部分數據。

2.mysqlimport導入數據

基本語法:mysqlimport -h伺服器地址 -u 用戶名 -p [--local] 資料庫名 文件路徑 [options]

options常用選項:

-d or --delete:導入數據前刪除原數據表中的所有信息。

-f or --force:不管是否遇到錯誤,mysqlimport將強制繼續插入數據

-i or --ignore:導入數據時跳過有相同唯一關鍵字的新行,保留原有行。

-r or -replace:用新行代替原數據表中有相同唯一關鍵字的記錄。

-l or -lock-tables:導入數據前鎖住原數據表。

--fields-terminated-by=name:設置欄位間的分隔符,默認'\t'

--fields-optionally-enclosed-by=name:設置欄位包圍字符

--fields-escaped-by=name:設置轉義字符,默認'\'

--lines-terminated-by=name:設置每行結尾的字符,默認'\n'

--ignore-lines=n:忽視文件的前幾行

mysqlimport命令無需指定表名,而是根據文件名作為表名,該數據表在導入數據時必須存在。

--local:是在本地計算機中查找文件時使用(指定--local後,文件可以放在任何地方進行導入,否則文件只能放在mysql的data目錄下或者指定絕對路徑)。

例:向user2表插入G:\user2.csv文件中數據。

user2.csv中數據如下:

數據導入:

相關焦點

  • 如何把Access的數據導入到Mysql中
    首頁 > 語言 > 關鍵詞 > 最新資訊 > 正文 如何把Access的數據導入到Mysql中
  • 實踐分享:ACCESS資料庫導入mysql資料庫
    作為程式設計師很多時候要進行不同資料庫之間的導入導出工作,這樣是為了節省數據錄入的時間。下面我就和大家分享一下如何把數據從ACCESS資料庫導入mysql資料庫。首先說明一下思路,可以導入mysql的方法有很多,但不包過access直接導入,網上有很多介紹CSV格式導入mysql的,但操作很不方便,經常發生錯誤而無法導入。sql語句導入是最簡單的。那有沒有辦法把access資料庫轉換成sql語句呢。
  • 將mysql數據導入access資料庫
    mysql資料庫表sqltable 欄位id,name,sex,email access資料庫表accesstable id,name,sex,email ?
  • python數據分析——pandas導入數據合集
    導入pandas庫import pandas as pd1.導入csv\txt文件數據pd.read_csv()常用參數:filepath_or_buffer:文件路徑(必填,其他參數按需求填寫)sep:指定分隔符,默認逗號','。header:指定第幾行作為表頭。
  • mysql查詢前一周的數據_mysql查詢當天的數據 - CSDN
    mysql 昨天 一周前 一月前 一年前的數據 這裡主要用到了DATE_SUB,參考如下代碼如下:SELECT * FROM
  • MySQL 數據校驗工具-愛可生|mysql|perl|伺服器|node01_網易訂閱
    概述  pt-table-checksum 是 Percona-Toolkit 的組件之一,用於檢測 MySQL 主、從庫的數據是否一致。其原理是在主庫執行基於 statement 的 SQL 語句來生成主庫數據塊的checksum,把相同的 SQL 語句傳遞到從庫執行,並在從庫上計算相同數據塊的 checksum,最後,比較主從庫上相同數據塊的 checksum 值,由此判斷主從數據是否一致。它能在非常大的表上工作的一個原因是,它把每個表分成行塊,並檢查每個塊與單個替換。選擇查詢。它改變塊的大小,使校驗和查詢在所需的時間內運行。
  • 基於MySQL資料庫應用開發實現嵌入式數控系統的設計
    本文就嵌入式數控系統中資料庫應用開發的具體實現過程,以及如何將資料庫應用程式向嵌入式數控系統硬體平臺的移植方法和對資料庫進行最小化裁剪的技巧上做了詳細介紹。 由於本課題開發的人機界面是利用GTK+圖形庫,因此系統中採用的基於MySQL資料庫應用開發,需要解決MySQL和GTK+相互融合的問題。
  • MySQL如何實時同步數據到ES?試試這款阿里開源的神器
    canal簡介canal主要用途是對MySQL資料庫增量日誌進行解析,提供增量數據的訂閱和消費,簡單說就是可以對MySQL的增量數據進行實時同步,支持同步到MySQL、Elasticsearch、HBase等數據存儲中去。
  • MySQL如何計算統計redo log大小
    在MySQL中如何計算、統計重做日誌(redo log)的生成情況呢? 例如10分鐘內,生成了多少M的redo log呢?30分鐘內又生成了多少M的redo log.....。MySQL沒有像Oracle中那樣的系統視圖統計這些數據,但是我們可以通過一些方法曲線的統計二進位日誌的生成量。
  • python3.8操作(插入,刪除)mysql/MariaDB資料庫
    () # 數據表內容有更新,必須使用到該語句print("插入成功:")except:print("發生插入錯誤")04代碼解析首先我們先安裝操作mysql/Mariadb的資料庫驅動包mysql-connector,使用命令pip install
  • MySQL8.0窗口函數做數據排名統計詳細教程
    MySQL8.0新增了窗口函數,大大的方便了做數據排名統計的人,很多朋友還不清楚怎麼用MySQL8.0做數據統計排名,下面就來為大家分享一篇心得文章。
  • eclipse如何使用JDBC連接mysql資料庫
    eclipse如何使用JDBC連接mysql資料庫1.在新建的Project中右鍵新建Floder2.創建名為lib的包3.創建完畢之後的工程目錄4.接下來解壓你下載的mysql的jar包,拷貝其中的.jar文件5.在工程lib
  • 大數據挖掘——(六):MySql資料庫
    mysql資料庫MySQL 是最流行的關係型資料庫管理系統,在WEB應用方面 MySQL 是最好的RDBMS(Relational Database Management System:關係資料庫管理系統)應用軟體之一,MySQL 是開源的,並且支持多種語言,包括C、C++、Python、Java、
  • mysql 版本號解釋_mysql workbench查詢mysql版本號 - CSDN
    mysql有關權限的表都有哪幾個MySQL伺服器通過權限表來控制用戶對資料庫的訪問,權限表存放在mysql資料庫裡,由mysql_install_db腳本初始化。這些權限表分別user,db,table_priv,columns_priv和host。
  • Mysql(Mariadb)資料庫主從複製
    Mysql主從複製的實現原理圖大致如下:MySQL之間數據複製的基礎是以二進位日誌文件(binary log file)來實現的,一臺MySQL資料庫一旦啟用二進位日誌後,其作為master,它資料庫中所有操作都會以「事件」的方式記錄在二進位日誌中,其他資料庫作為slave通過一個I/O線程與主伺服器保持通信,並監控master的二進位日誌文件的變化,如果發現
  • MySQL資料庫函數詳解(3)
    (11) object mysql_fetch_field(int result [,int col_num]);    返回結果集中給定列的相關元數據信息,如果沒有這樣的列,則返回假。如果省略col_num,則對mysql_fetch_field()的後繼調用返回結果集後續列的信息。如果不再有剩餘的列。則返回值為假。
  • 一千行MySQL學習筆記
    SHOW VARIABLES LIKE 'character_set_%'    -- 查看所有字符集編碼項    character_set_client        客戶端向伺服器發送數據時使用的編碼    character_set_results        伺服器端將結果返回給客戶端所使用的編碼    character_set_connection
  • python數據分析——pandas導出數據合集
    導入pandas庫:import pandas as pd導入基礎數據:df=pd.read_excel('數據.xlsx')1.將DataFrame寫入csv\txt文件DataFrame.to_csv()常用參數:path_or_buf=None:輸出文件路徑,默認None
  • MySQL 8.0 正式版 8.0.11 發布:比 MySQL 5.7 快 2 倍
    唯一受支持的替代方案是在升級之前對數據進行備份。下面簡要介紹 MySQL 8 中值得關注的新特性和改進。1. 性能:MySQL 8.0 的速度要比 MySQL 5.7 快 2 倍。JSON:MySQL 8 大幅改進了對 JSON 的支持,添加了基於路徑查詢參數從 JSON 欄位中抽取數據的 JSON_EXTRACT() 函數,以及用於將數據分別組合到 JSON 數組和對象中的 JSON_ARRAYAGG() 和 JSON_OBJECTAGG() 聚合函數。9.
  • SELinux 與 MySQL-愛可生
    00:01:00 mysqld也可以使用 ls -Z 查看 MySQL 數據目錄的 SELinux 的上下文:[root@redhat7 ~]# ls -dZ /var/lib/mysqldrwxr-x--x. mysql mysql system_u:object_r:mysqld_db_t:s0 /var/lib/mysql參數說明:system_u