美文网首页
DML数据操作语言

DML数据操作语言

作者: 很很狠的狠角色 | 来源:发表于2017-10-20 21:23 被阅读0次
    • DML:Data Manipulation Language
    • 作用:用于向数据库表中插入、删除、修改数据
    • 常用关键字:INSERT UPDATE DELETE
    • 基本句型
      INSERT INTO table (col1,col2,col3...) VALUES (data1,data2,data3...);(若是插入一条所有列都涉及的记录,列名col可省略)
    • 特别注意:MySQL,字符串或日期要包含在单引号中。
      空值:NULL


      MySQL常用数据类型

      *MySQL中使用TEXT,DB2和Oracle中使用CLOB。

    实践操作

    • 查看表中的所有记录
      SELECT * FROM user;
    • 使用insert语句向表中插入三个员工的信息。
    1. INSERT INTO user VALUES (1,'zxn','female','1995-12-02','2014-09-16','CEO',100000,'beauty');
    2. INSERT INTO user (id,username,gender,birthday,entry_date,job,salary,resume) VALUES (2,'lyx','male','1945-12-02','2014-09-16','EM',100000,'ugly');
    3. INSERT INTO user (id,username,gender,birthday,entry_date,job,salary,resume) VALUES (3,'马小跳','男','1965-12-02','2014-09-16','CTO',100000,'马总');
    • 插入中文数据
      SHOW VARIABLES LIKE 'character%';(查看编码使用情况)
      编码使用情况
      编码值代表的意思
      有时会出现一些编码错误问题或者返回中文乱码,这是因为上表中Value一项的值有冲突。使用可视化工具是没有这个问题的。
    • 告知服务器客户端使用的编码:
      SET character_set_client = gbk;(若无错误无需更改)
    • 告知服务器返回的结果集请使用gbk
      SET character_set_results = gbk;
    • 将所有员工薪水修改为5000元
      UPDATE user SET salary = 5000;
    • 将姓名为'zxn'的员工薪水修改为3000元
      UPDATE user SET salary = 3000 WHERE username = 'zxn';(不要忘记写WHERE)
    • 将姓名为'lyx'的员工薪水修改为4000元,job改为ccc。
      UPDATE user SET salary = 4000,job = 'ccc' WHERE username = 'lyx';(不要忘记写WHERE)
    • 将马小跳的薪水在原有基础上增加1000元。
      UPDATE user SET salary = salary + 1000 WHERE username = '马小跳’;(不要忘记写WHERE)
    • 删除表中名为'zxn'的记录。
      DELETE FROM user WHERE username = 'zxn';(不要忘记写WHERE)
    • 删除所有的记录
      DELETE FROM user;
    • 使用TRUNCATE删除表中记录
      TRUNCATE TABLE user;
    • TRUNCATE 对表进行删除操作,速度快,不会触发trigger,不可rollback数据;隐式commit;没有表空洞,操作后,表的占据空间和初始化时相同大小
    • DELETE对数据进行删除操作,逐条删除,速度慢,会计入删除操作日志中,可触发trigger,回滚数据;需要手动commit才会彻底生效;会有表空洞,占据空间和删除前一样大小

    相关文章

      网友评论

          本文标题:DML数据操作语言

          本文链接:https://www.haomeiwen.com/subject/hkdpuxtx.html