DML(数据库操作语言):

数据操作语言DML(Data Manipulation Language),用户通过它可以实现对数据库的基本操作。例如,对表中数据的查询、插入、删除和修改。 在DML中,应用程序可以对数据库作插,删,改,排,检等五种操作

数据库意义,存储,管理。

创建一个表

create table if not exists test(
      -- id 列名  int 数据类型  primary key 主键 not null 不为空 auto_increment 自增   comment "" 别名
  	id  int  primary key  not null auto_increment comment '主键',
      -- default '' 默认的
      name varchar(10) not null default '匿名' comment '姓名'
  )Engine=innodb default charset=utf8;

添加(insert):

-- 一般写插入语句,我们一定要数据和字段一一对应 一个子段对应一个值
    -- 插入数据
    insert into 表名 (【字段1,自段2,字段三】) value ('值1'),('值2'),('值3');
    
    insert into test(name) value("张三");
     -- 或者
     -- 已知列  id name 
     insert into test value ('12','name');
     
     -- 由于主键自增,那么我们不插入id
     insert into test value( ,'name');
     
     -- 一次插入多个数据
     insert into test(name) value ('张三'),('李四');

注意:

  1. 字段使用英文逗号隔开
  2. 不写具体的列进行插入,那么我们插入的时候就需要整个数据库列的值全部插入
  3. 字段可以省略,但是后面的值必须要一一对应,不能少
  4. 可以同时插入多条数据,value后边的值,需要使用 英文逗号隔开。(),()

更新(update):

一般是更新数据库中的数据,而不是更新表的子段。。。。

-- 修改学员的名字
update test set name = '张三' where id = 1 ;
-- 在不指定具体的条件的情况下更改会更改表中所有name的数据
update test set name = '李四';  -- 更新整个表中列为name的所有数据是name都等于'李四';  切记不要傻乎乎的使用。。。后果就是删库跑路

-- 修改多个属性,逗号隔开
update test set name =  '张三'  , tel = '123321', email = '2569758@qq.com' where id = 1;



-- 语法 
update 表名 set 【列名1 = 值1,列2 = 值2 。。。。】 where 【条件】;

操作符

含义

范围

结果

=

等于

5=6

false

<> 或 !=

不等于

5<> 6

true

‘’>“”

大于

5>6

false

<

小于

5<6

true

<=

小于等于


‘’>= ”

大于等于


between… and …

介于…之间

[2,5]

and


5>1 and 1>2

false

or


5>1 or 1>2

true

update 表名 set 【列名1 = 值1,列2 = 值2 。。。。】 where 【条件】;

注意:

1. 更新某个类需要指定列名,顺带加上条件,没有加条件则会更新所有的列
2. 不同列名之间需要加,隔开。

删除(delete)

删除表中的数据,和drop不一样,drop是删除整个表,delete是删除表中的数据

-- 删除数据 尽量避免不添加条件删除
delete from 表名 ; -- 这样会删除整个数据库

-- 删除指定数据,也就是根据条件删除
delete from 表名 where  列名1 = 值1 and 列名2 = 值2 ...;

TRUNCATE命令(推荐)

清空某一张表。。。

-- 清空student表 truncate
    TRUNCATE 表名;

delete 和 truncate区别:

1. 相同点:都能删除表数据,且不会删除表结构
2. 不同:
1. truncate 重新设置自增列 记数器会归零
2. truncate不会影响事务

delete删除问题,重启数据库,现象

InnoDB 自增会重1开始(存在内存中的,断电就失去);

MyISAM 继续从上一个自增量开始(存在文件中,不会丢失)


阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: mysql数据库