插入數據的多種方式 直接通過insert語句插入 語法: INSERT [INTO] tbl_name [(col_name [, col_name] ...)] { {VALUES | VALUE} (value_list) [, (value_list)] ... } 示例: # 插入數據 第一 ...
插入數據的多種方式
直接通過insert語句插入
語法:
INSERT [INTO] tbl_name
[(col_name [, col_name] ...)]
{ {VALUES | VALUE} (value_list) [, (value_list)] ... }
示例:
# 插入數據 第一種方式 values關鍵字可以替換為value 兩者作用一致
insert into human(`name`) values ('情韻測試');
# 批量插入
insert into human(`name`) value ('情韻測試'),('青雲測試'),('青雲測試'),('青雲測試'),('青雲測試'),('青雲測試'),('青雲測試'),('青雲測試');
運行結果:
通過insert ... set方式插入數據
語法:
INSERT [INTO] tbl_name
SET assignment_list
示例:
# 插入數據 第二種方式
# 這種方式不能批量插入 簡化了之前的插入
insert into human set name = '測試' ,id = 101;
運行結果:
通過insert ... table/select/values 方式插入數據
語法:
INSERT [INTO] tbl_name
[(col_name [, col_name] ...)]
{ SELECT ...
| TABLE table_name
| VALUES row_constructor_list
}
示例1select
:
# insert ... select
# 從另一張表格中選出的數據格式和數量必須相同,不要求列名必須相同
insert into human select name,id from person;
示例2table
:
# insert ... table
# 另一張表格中對應的數據格式和欄位數量必須相同,不要求列名必須相同
insert into human table person;
示例3values
:
insert into human(`name`)
values row('name'), row('name'), row('name'), row('name'), row('name'), row('name');
運行結果:
通過load data的方式插入數據
這種方式首先得準備好要插入的數據文檔,然後進行插入。
我們可以先導出一份資料庫表的數據:
語法:
SELECT select_expr [, select_expr] ...
[FROM table_references
[WHERE where_condition]
[GROUP BY {col_name | expr | position}, ... [WITH ROLLUP]]
[HAVING where_condition]
[ORDER BY {col_name | expr | position}
[ASC | DESC], ... [WITH ROLLUP]]
[LIMIT {[offset,] row_count | row_count OFFSET offset}]
[into_option]
into_option: {
INTO OUTFILE 'file_name'
[CHARACTER SET charset_name]
export_options
| INTO DUMPFILE 'file_name'
| INTO var_name [, var_name] ...
}
示例:
# 將數據導入到本地
# secure_file_priv 是只讀變數 需要去配置文件修改 secure-file-priv=''
select * from human into outfile 'f:/db.txt';
需要修改配置文件:
[mysqld]
...
# 配置select ... from ... into outfile '文件地址'
secure-file-priv=''
...
[mysql]
...
重啟mysql
查看生成的文件:
使用load data插入數據
語法:
LOAD DATA
INFILE 'file_name'
INTO TABLE tbl_name
[CHARACTER SET charset_name]
[{FIELDS | COLUMNS}
[TERMINATED BY 'string']
[[OPTIONALLY] ENCLOSED BY 'char']
[ESCAPED BY 'char']
]
示例:
這裡如果提示不允許也需要修改配置文件【註意:不太建議開啟 ,記得及時關閉,有安全風險!】
[mysqld]
...
# 配置文件讀取數據
local_infile=1
# 配置select ... from ... into outfile '文件地址'
secure-file-priv=''
...
[mysql]
# 配置文件讀取數據
local_infile=1
...
重啟mysql
load data infile 'f:/db.txt' into table human;
運行結果:
使用source 以及 mysqldump插入數據
使用命令行方式導入數據,這種方式比較簡單,百度搜一下即可。