zoukankan      html  css  js  c++  java
  • 八:数据的增删改

    插入:insert

    修改:update

    删除:delete

    # 一:插入语句

    语法:

      insert into 表名 (列名....) value (值1.....)

      或者 inset into 表名 set 列名=值,列名=值;

      两种方式的区别:

        方式一支持插入多行,方式二不支持

        方式一支持子查询,方式二不支持

        

     # 二:修改语句

      2.1)修改单表记录

          update 表名 set 列=新值,列=新值···  where  筛选条件;

    UPDATE salaries s
    JOIN employees ON s.`emp_no`=employees.`emp_no`
    SET s.`salary`=0,employees.`first_name`='hello mysql'
    WHERE s.`salary`=75001;
    修改

      2.2)修改多表记录

          update 表1 别名

          inner/left/right join 表2 别名  on 连接条件

          set 列=值 

          where 筛选条件;

    # 三:删除语句(delete 删除有返回值,truncate没有返回值,truncate删除不能回滚,delete删除可以回滚

      3.1)单表删除

          delete from 表名 where 筛选条件

          truncate table 表名;#truncate后面不能加筛选条件, 删除所有数据,删库记得跑路

      3.2)多表删除

          sql99语法:

            delete 表1的别名,表二的别名

            from 表1 别名

            inner / left / right join 表2别名 on 连接条件

            where 筛选条件;

    DELETE s,e
    FROM
      salaries AS s
      INNER JOIN employees AS e
        ON s.emp_no = e.emp_no
    WHERE s.salary = 0 ;
    多表删除

    面试题:

    两种删除方式的区别

    1. 自增长列:truncate删除后,如果在插入,标识从1开始

      delete删除后,如果在插入,标识从断点开始

    2.delete可以添加筛选条件truncate不可以

    3.truncate效率较高

    4.truncate没有返回值

      delete可以返回收影响的行数

    5.truncate不可以回滚

  • 相关阅读:
    使用自绘控件详细步骤转
    对话框上如何创建视图
    c++ 分割字符串存入数组
    在对话框上创建视图的报错》ASSERT(pParentFrame == pDesktopWnd || pDesktopWnd>IsChild(pParentFrame))
    CMFCOutlookBarTabCtrl 不显示了
    常用加密算法概述
    [两个月,黎巴嫩]贝鲁特守望
    [C#]XmlDocument_修改xml文件操作.
    wordpress之客户端发布文章
    大二上躺平经验
  • 原文地址:https://www.cnblogs.com/BookMiki/p/14161041.html
Copyright © 2011-2022 走看看