zoukankan      html  css  js  c++  java
  • MySQL数据库之数据操作

    数据操作

    插入数据

    插入所有字段

    • 语法

      • insert into 表名 (字段名, 字段名,…) values (值1, 值1,…);
    • 说明

      • 插入字段名的顺序和数据表中字段名的顺序可以不一致
      • 插入值的个数、顺序必须和插入字段名的个数、顺序要一致
      • 如果插入的值的顺序和个数与表字段的顺序个数一致,插入字段可以省略
    -- 插入所有字段
    mysql> insert into stu (id,stuname,sex,`add`) values (1,'tom','男','北京');
    # `Query OK, 1 row affected (0.00 sec)`
    
    -- 插入部分字段
    mysql> insert into stu(id,stuname) values (2,'berry');
    
    -- 插入的字段和表的字段可以顺序不一致。但是插入字段名和插入的值一定要一一对应
    mysql> insert into stu(sex,`add`,id,stuname) values ('女','上海',3,'ketty');
    # `Query OK, 1 row affected (0.00 sec)`
    
    -- 插入字段名可以省略
    mysql> insert into stu values(4,'rose','女','重庆');
    # `Query OK, 1 row affected (0.00 sec)`
    

    插入默认值和空值

    • 语法
      • insert into 表名 values (值1, 值2, null, default);
      • default关键字用来插入默认值,null用来插入空值
    mysql> insert into stu values (5,'jake',null,default);
    # `Query OK, 1 row affected (0.05 sec)`
    

    插入多条数据

    mysql> insert into stu values (6,'李白','男','四川'),(7,'杜甫','男','湖北');
    # `Query OK, 2 rows affected (0.00 sec)`
    # `Records: 2  Duplicates: 0  Warnings: 0`
    

    更新数据

    • 语法
      • update 表名 set 字段=值 [where 条件];
    -- 将berry性别改为女
    mysql> update stu set sex='女' where stuname='berry';
    # `Query OK, 1 row affected (0.06 sec)`
    
    -- 将编号是1号的学生性别改成女,地址改为上海。
    mysql> update stu set sex='女',`add`='上海' where id=1;
    # `Query OK, 1 row affected (0.00 sec)`
    

    插入或更新数据

    • 语法

      • insert into tablename (field1,field2,field3,...) values (value1,value2,value3,...) on duplicate key update field1=value1,field2=value2,field3=value3,...;
    • 作用

    • 为了解决重复性,当数据库中存在某个记录时,执行这条语句会更新它,而不存在这条记录时,会插入它
    • 规则
      • 如果插入的记录导致一个unique索引或者primary key(主键)出现重复
      • 那么就会认为该条记录存在,执行update语句而不是insert语句
      • 反之,执行insert语句而不是更新语句

    删除数据

    • 语法

      • delete from 表名 [where 条件];
    • delete from 表和truncate table 表的区别

      • delete from 遍历表记录,一条一条的删除
      • truncate table 将原表销毁,再创建一个同结构的新表。就清空表而言,这种方法效率高
    -- 删除1号学生
    mysql> delete from stu where id=1;
    
    -- 删除名字是berry的学生
    mysql> delete from stu where stuname='berry';
    # `Query OK, 1 row affected (0.00 sec)`
    
    -- 删除所有数据
    mysql> delete from stu;
    # `Query OK, 5 rows affected (0.00 sec)`
    

    查询数据

    • 语法
      • select 列名 from 表名;
    -- 查询id字段的值
    mysql> select id from stu;
    
    -- 查询id,stuname字段的值
    mysql> select id,stuname from stu;、
    
    -- 查询所有字段的值
    mysql> select * from stu;
    
  • 相关阅读:
    Python 循环语句
    Python if、elif 、else语句 与 布尔运算
    Python 运算符
    Python 标识符
    Python 常用数据类型(整数,浮点数,复数,布尔型)
    Python 编辑器内容
    Python 语言介绍
    vscode 最新中文设置
    漫画数据库_基础和设计数据库
    linux配置服务器
  • 原文地址:https://www.cnblogs.com/SharkJiao/p/14137706.html
Copyright © 2011-2022 走看看