MySQL~操作表数据

一、使用INSERT语句添加数据

1、向表中的全部字段添加值

示例:创建一个课程信息表:

CREATE TABLE course(
c_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
c_name CHAR(40) NOT NULL,
c_grade FLOAT NOT NULL,
c_info CHAR(100) NULL,
);

向表中所有字段插入数据的方法有二种:

  • 指定所有字段名。
  • 完全不指定字段名。

示例:指定所有字段名,插入数据到course表

INSERT INTO course(c_id,c_name,c_grade,c_info) VALUES
(1,'Network',3,'Computer Network');

示例:不指定字段名,插入数据到course表

INSERT INTO course VALUES (2,'Java',4,'Java EE');
  • 当INSERT语句中没有指定插入列表,只有一个值列表。在这种情况下,值列表为每一个字段列指定插入的值,但是这些值的顺序必须和course表中字段定义的顺序相同。

2、向表中指定字段添加值

为表的指定字段插入值,是在INSERT语句中只向部分字段中插入值,而其他字段的值为表定义时的默认值。

INSERT INTO course(c_name,c_grade,c_info) VALUES 
('Network',3,'Computer Network');

3、使用INERT INTO...SELECT... FROM 语句复制表数据

INERT INTO...SELECT...FROM语句用于快速的从一个或多个表中取出数据,并将这些数据作为行数据插入另一个表中,SELECT子句返回的是一个查询到的结果集,INSERT语句将这个结果集插入到指定表中,结果集中的每行数据的字段数、字段的数据都必须与被操作的表完全一致。

示例:创建一个与course表结构相同的数据表course_new

CREATE TABLE course_new(
c_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
c_name CHAR(40) NOT NULL,
c_grade FLOAT NOT NULL,
c_info CHAR(100) NULL,
);

示例:将course表中查询所有数据行,并将其插入course_new表中

INSERT INTO course_new (c_id,c_name,c_grade,c_info) 
SELECT c_id,c_name,c_grade,c_info FROM course;

二、使用UPDATE语句修改数据

1、修改表中的数据

示例:在course表中,更新所有行的c_grade字段值为4

UPDATE course SET c_grade=4;

2、根据条件修改表中的数据

示例:在course表中,更新c_id=2的数据,将c_grade的值修改为3.5,将c_name的值修改为'DB'

UPDATE course SET c_name='DB',c_grade=3.5 WHERE c_id=2;
  • 如果忽略WHERE子句,将更新表中所有的行。

三、使用DELETE语句删除数据

1、删除单个表中的数据

DELETE FROM <表名> [WHERE 子句] [ORDER BY 子句] [LIMIT 子句]

2、删除表中的全部数据

DELETE FROM <表名>

3、根据条件删除表中的数据

DELETE FROM <表名> WHERE <删除条件>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。