03,基本的增删改查

乱码情况

如果用select选择表中数据时,出现了乱码情况。那么,是因为客户端(命令行)是GBK的(可以通过右击命令行查看属性,看到GBK),然后此时我们写入表中的是utf8格式的。
需要告诉服务器,客户端是GBK编码。

mysql > set names gbk;
此时,再进行select语句就行了。

在命令行中,打错了,又换了回车。

就用,“\c”来退出执行。

增删改查,是针对表来说的。

建一张下图中的表
03,基本的增删改查_第1张图片

表名就用class表示吧。于是用下面的语句,建成表的结构。

03,基本的增删改查_第2张图片

此时查看数据库中的表,就会发现有一个命名为class的表已经生成了。

查看表的结构

desc class;

增加一个数据,也就只是增加一行。(如果增加一列,就要改变表结构了。)

增加一行,可能增加上面五列的值,也可能只增加四列的值(比如公司不填)。

  • 往哪一张表添加行?
    class
  • 你要添加哪几列?
    id,sname,gender,company,salary,fanbu
  • 分别添加什么值?
    (1,'张三','男','百度',8888.67,834)

列与值,一定要一一对应!

03,基本的增删改查_第3张图片

再比如,用“刀锋”同学,只记录姓名,性别,薪水。那么就只往其中对应的列插入即可。

03,基本的增删改查_第4张图片

上例中,虽然id没有赋值,但是id是自增型,所以自己增长了,值为2.

回头再看,插入所有列

可以把所有列名都给省了,不打。insert以后直接values。

03,基本的增删改查_第5张图片
一种常见的错误

认为id是自增型的,不需要再赋值。

03,基本的增删改查_第6张图片

如图,默认插入所有列,但是插入的值少了一列,不对应。所以出错。

改 updata

需要问四个问题:

  • 改哪张表?
  • 改哪几列?
    该多列时,在列与列中间用逗号连接。
  • 分别改成什么值?
  • 在哪一行上生效?(这一点很重要很重要,不然可能会影响整张表)
    where 后面是判断语句,若用'where 1'语句,会发现所有列都被改了。

**注意,这里的逗号‘,’是用来隔开多个值的,最后一个值(比如‘千度’这里就不能再加逗号了)。否则会

03,基本的增删改查_第7张图片

删除

删除就是,只删除整行。
不存在删除某一行的某一个数值(因为就是改的操作了)

  • 1、删除哪张表上的数据?
  • 2、删除哪几行?
    用where 语句。
03,基本的增删改查_第8张图片

就是这样。
需要注意的是,如果是delete后面不加where语句,那么就会删掉所有行。

  • 1、查哪张表的数据?
  • 2、查哪些列?
  • 3、查哪一行?

这里,* 代表所有列,并且在表名后面不加where 条件,则选择所有行。
因此,取出所有行,所有列。

部分列,所有行

03,基本的增删改查_第9张图片

部分列,部分行

03,基本的增删改查_第10张图片

这是最基本的增删改查,针对单个表来说。

后面还要学什么?
如何自己建表,如何修改表,多表联查,子查询,触发器,事务,备份与恢复等等。

你可能感兴趣的:(03,基本的增删改查)