MySql基础之DML-数据操纵语言(CRUD)

有时候,不是因为你没有能力,也不是因为你缺少勇气,只是因为你付出的努力还太少,所以,成功便不会走向你。而你所需要做的,就是坚定你的梦想,你的目标,你的未来,然后以不达目的誓不罢休的那股劲,去付出你的努力,成功就会慢慢向你靠近。

导读:本篇文章讲解 MySql基础之DML-数据操纵语言(CRUD),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

1、插入数据

方式1:VALUES的方式添加

  1. 为表的所有字段按默认顺序插入数据
INSERT INTO 表名 
VALUES (value1,value2,....);

举例:

INSERT INTO departments 
VALUES (70, 'Pub', 100, 1700);

值列表中需要为表的每一个字段指定值,并且值的顺序必须和数据表中字段定义时的顺序相同。

  1. 为表的指定字段插入数据
INSERT INTO 表名(column1 [, column2,, columnn]) 
VALUES (value1 [,value2,, valuen]);

举例:

INSERT INTO departments(department_id, department_name) 
VALUES (80, 'IT');
  1. 同时插入多条记录
INSERT INTO table_name 
VALUES 
(value1 [,value2,, valuen]), 
(value1 [,value2,, valuen]), 
……
(value1 [,value2,, valuen]);

或者

INSERT INTO table_name(column1 [, column2,, columnn]) 
VALUES 
(value1 [,value2,, valuen]), 
(value1 [,value2,, valuen]), 
……
(value1 [,value2,, valuen]);

举例:

INSERT INTO emp(emp_id,emp_name)
VALUES 
(1001,'shkstart'),
(1002,'atguigu'),
(1003,'Tom');

小结:

  • VALUES 也可以写成 VALUE ,但是VALUES是标准写法。
  • 字符和日期型数据应包含在单引号中。

方式2:将查询结果插入到表中

基本语法格式如下:

INSERT INTO 目标表名 
(tar_column1 [, tar_column2,, tar_columnn]) 
SELECT 
(src_column1 [, src_column2,, src_columnn]) 
FROM 源表名 [WHERE condition]

举例:

INSERT INTO emp2 
SELECT * 
FROM employees 
WHERE department_id = 90;
INSERT INTO sales_reps(id, name, salary, commission_pct) 
SELECT employee_id, last_name, salary, commission_pct 
FROM employees 
WHERE job_id LIKE '%REP%';

2、更新数据

语法如下:

UPDATE table_name 
SET column1=value1, column2=value2,, column=valuen 
[WHERE condition]
  • 可以一次更新多条数据。
  • 如果需要回滚数据,需要保证在DML前,进行设置:SET AUTOCOMMIT = FALSE;

举例:

UPDATE employees 
SET department_id = 70 
WHERE employee_id = 113;

3、删除数据

基本语法:

DELETE FROM table_name [WHERE <condition>];

举例:

DELETE FROM departments 
WHERE department_name = 'Finance';

4、MySQL8新特性:计算列

什么叫计算列呢?简单来说就是某一列的值是通过别的列计算得来的。例如,a列值为1、b列值为2,c列
不需要手动插入,定义a+b的结果为c的值,那么c就是计算列,是通过别的列计算得来的。

在MySQL 8.0中,CREATE TABLE 和 ALTER TABLE 中都支持增加计算列。下面以CREATE TABLE为例进行讲
解。
举例:定义数据表tb1,然后定义字段id、字段a、字段b和字段c,其中字段c为计算列,用于计算a+b的
值。 首先创建测试表tb1,语句如下:

CREATE TABLE tb1( 
id INT, 
a INT, 
b INT, 
c INT GENERATED ALWAYS AS (a + b) VIRTUAL 
);

演示:
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/148624.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!