mysql 層刪改 MySQL資料的增刪改

2021-10-17 21:43:57 字數 2652 閱讀 6093

資料操作語言(dml)是對錶中記錄進行新增(insert)、更新(update)、刪除(delete)等操作。

新增資料

向表中新增資料時,欄位名與字段值的資料型別、個數、順序必須一一對應。

語法:insert into [[,,...]] values ([,,...]);省略欄位名,則預設依次插入所有字段。

批量新增多個表或多個值之間使用逗號分隔。

示例1:不指定欄位名新增

mysql> insert into employee values('e01','張三',26,'p01');

示例2:指定欄位名新增

mysql> insert into employee (e_id,e_name,p_id) values ('e01','張三','p01');

示例3:批量新增

mysql> insert into employee values

-> ('e01','張三',26,'p01'),

-> ('e02','李四',29,'p01'),

-> ('e03','王五',33,'p03');

匯入本地資料:

load data local infile 『』into table fields terminated by 『' [ignore n lines];本地檔案路徑中不能含有中文,路徑中用』\『或』/』。

檔案的字符集編碼與資料庫的字符集編碼一致,否則會出現亂碼情況。

示例:-- 建立表

mysql> create table emp(

-> empno int primary key auto_increment,

-> ename varchar(5) not null,

-> ename varchar(5),

-> mgr int,

-> hiredate date,

-> sal float,

-> comm float,

-> deptno int);

-- 匯入資料

mysql> load data local infile 'c:/employee.csv'

-> into table emp

-> fields terminated by ','

-> ignore 1 lines;

將查詢結果新增到表中:

insert into [[,,...]]

select [,,...] from [where ];新錶需事先建立,且與select子句的字段型別一一對應。

示例:-- 建立表

mysql> create table emp(

-> empno int primary key auto_increment,

-> ename varchar(5) not null,

-> ename varchar(5),

-> mgr int,

-> hiredate date,

-> sal float,

-> comm float,

-> deptno int);

-- 新增資料

mysql> insert into emp (empno,ename,deptno)

-> select e_id,e_name,d_id from employee;

將查詢結果新增到新錶中:

create table as

select [,,...] from [where ];新增資料的同時建立新錶

示例:mysql> create table emp as

-> select e_id,e_name,d_id from employee;

更新資料

在mysql中,可以使用update語句來修改、更新表中的資料。

語法:update set = [,=…=]

[where ]

[order by [排序方向]]

[limit ];set子句用於指定表中要修改的欄位名及其字段值。每個指定的值可以是表示式,也可以是該字段對應的預設值。如果指定的是預設值,可用關鍵字default。

where子句用於限定表中要修改的行。若不指定,則修改表中所有的行。

order by子句用於限定表中的行被修改的次序。

limit子句用於限定被修改的行數。

修改多個欄位值時,set子句的每個值用逗號分開即可。

示例:將7369員工的姓名修改為abc

mysql> update emp set ename='abc' where empno=7369;

刪除資料

在mysql中,可以使用delete語句來刪除表中記錄。

語法:delete from [where 刪除條件] [order by [排序方向]] [limit ];where子句表示為刪除操作限定刪除條件,若省略則代表刪除表中的所有行。

order by子句表示刪除時,表中各行將按照子句中指定的順序進行刪除。

limit子句用於告知伺服器在控制命令被返回到客戶端前被刪除行的最大值。

示例1:刪除20部門的員工記錄

mysql> delete from emp where deptno=20;

示例2:刪除所有的員工記錄

mysql> delete from emp;

清除表中所有記錄:

truncate 表名;

MySQL資料增刪改

1 插入資料insert 1.插入完整資料 順序插入 語法一 insert into 表名 欄位1,欄位2,欄位3 欄位n values 值1,值2,值3 值n 語法二 insert into 表名 values 值1,值2,值3 值n 2.指定字段插入資料 語法 insert into 表名 欄位...

Mysql資料增刪改查

建立資料庫表 haha 並寫入字段 create table haha user name varchar 32 age int,sin date date 向字段寫入資料 insert into xx value xixi 12 2016 12 12 insert into xx values w...

mysql資料增刪改查

資料表的建立請看鏈結 1.增加 insert 全列插入在實際開發使用較少,如果表結構發生變化,全列插入就會報錯 insert into 表名 values 值1,值2 全列插入 insert into students values 1,小明 18,男 218 指定列插入 insert into 表...