zoukankan      html  css  js  c++  java
  • Mysql数据增删改操作以及复制表小技巧

    基本的概念:crud操作,表示是增删改查. c[create] / r[read] / u[update] /d[delete] 。

    下面的案例都以该表为基础:

    --创建表
    create table staff(
    id int not null default 1 comment "序列号",
    name varchar(5) not null default '保密' comment '姓名',
    sex enum('','','保密') not null default '保密' comment '性别',
    birthday date comment '生日',
    entry_date date comment '入职日期',
    station varchar(20) not null default '保密' comment '职位',
    salary decimal(10,2) unsigned not null default 0 comment '薪资',
    resume text comment '文章'
    )charset=utf8 engine=myisam;

    insert语句:

      概念:基本的概念就是将数据添加到某个表中

      基本说明:

      (1)   添加数据时,可以一条insert 语句可以添加多少记录

      (2)   在添加时,可以指定字段名称

      案例演示:

    --插入数据
    insert into `staff` value(6,'老王',1,'1976-9-8','2014-5-18','保洁',3900.00,' ');
    insert into `staff` value(10,'小明',1,'1992-7-16','2016-5-18','工程师',13000.00,' ');
    --插入的数据可以指定需求的属性 同时插入多条语句
    insert into `staff` (id,name,sex,entry_date,station,salary) values
    (2,'老张',1,'2006-7-8','副总',50000),
    (18,'小李',2,'2016-2-28','文员',4000),
    (21,'小刘',2,'2018-9-15','前台',4000);

      insert 细节-使用注意事项:

        (1) 插入的数据应与字段的数据类型相同

        (2) 数据的大小应在字段的规定范围内

        (3)在values中列出的数据位置必须与被加入的列的排列位置相对应

        (4)字符和日期型数据应包含在单引号中

        (5)插入空值[前提是该字段允许为空]

        (6)insert into values (),(),()  形式添加多条记录

        (7)如果是给表中的所有字段添加数据,可以不写前面的字段名称, 如果你只是给部分字段添加值,则必须指定列名(没有指定的列名必须有默认值否则会报错)

        (8)建议我们以后添加数据,都给我把 ''  引起了  如果我们以后在开发中,不知道是否需要将 值 '' 引起来,则''引起来就可以了。

    update语句:

      基本概念:update语句就是修改数据的

      说明:

        (1)   update 可以一次性的修改多个字段

        (2)   update 可以通过where子句来挑选哪些记录可以被修改

        (3)   update 修改字段是,可以是表达式(函数)

    --将所有员工的salary改为5000
    update `staff` set salary = 5000;
    --将老张的salary改为15000
    update `staff` set salary = 15000 where name = '老张';
    --将工程师的salary改为12000
    update `staff` set salary = 12000 where station = '工程师';
    --将老王的工资在原有的基础上减少1000;
    update `staff` set salary = salary - 1000 where name = '老王';
    --将小李的工资改为5500station改为专员;
    update `staff` set salary = 5500,station = '专员' where name = '小李';

    delete语句:

      说明: delete 语句可以删除我们希望删除的记录, 通过where子句来选择你要删除的记录,如果你不写,整个表的记录都全部删除了.

      delete 和 truncate 语句区别 :

        (1)   delete 和 truncate 都可以删除数据.

        (2)   从执行的速度上看 , truncate > delete

        (3)   delete语句可以带where子句,truncate 不能带where, 即truncate 指令只能删除整表的记录

        (4)   delete 会返回删除的记录数,而truncate 返回0

    --删除小明的信息
    delete from `staff` where name = '小明';
    --删除工资高于10000的人员
    delete from `staff` where salary > 10000;

    小技巧:复制表staff到staff1中

    create table `staff1` like `staff`; 
    insert into `staff1` select * from `staff`;
  • 相关阅读:
    三层架构和MVC模型的常识
    iOS开发之Auto Layout入门
    js-innerHTML
    $(document).ready() 与window.onload的差别
    java jsp+servlet+mysql实现登录网页设计
    ASCII码表
    表单的提交onsubmit事件
    谋哥:社交小游戏App将是下一个金矿!
    各种表
    vue elementui table 双击单元格实现编辑,聚焦,失去焦点,显示隐藏input和span
  • 原文地址:https://www.cnblogs.com/rickyctbur/p/11188700.html
Copyright © 2011-2022 走看看