1.先创建一个表。
CREATE TABLE mybook(id INT ,bookname VARCHAR(40),money INT);
2.先给我们的mybook表改名为book
ALTER TABLE mybook RENAME book;
3.给book 表添加一个字段,作者author
ALTER TABLE book ADD author VARCHAR(40) NOT NULL;
4.删除book表中 author 这个字段。 drop
ALTER TABLE book DROP author;
DML语句,对表中的数据进行操作。
添加数据:
添加数据: insert into 表名 values(字段对应数据1,字段对应数据2,……);
注意: 表名,后面可以添加字段名,表示要往对应字段下面添加数据。
字段名可以是多个,用逗号隔开。添加的值,也要和字段数量一一对应。
添加多条数据:
当我们要给一个表中添加多条数据的时候。
insert into 表名 values(一条数据),(第二条数据),(第三条数据);……
如何修改:修改数据,和数据里面的约束。change 改变字段。
delete 删除字段,之后在重新创建,后边会学习专门对属性操作。
从原表中选择数据,添加到新表中。
方法1:
INSERT INTO 新表(字段1,字段2……)SELECT字段1,字段2……FROM 原表;
方法2:
CREATE TABLE 新表(SELECT 字段1,字段2 …… FROM 原表);
更新数据:
update :
update 表名 set 字段名=字段值, 字段名=字段值,字段名=字段值 where 条件。
删除数据:
DELETE FROM 表名 [WHERE条件];
delete from 表名; (后边不跟条件的话,就删除所有表中内容)
添加了auto_increment 这个属性的字段,具备自增的属性。
当你删除了,中间的一些列表内容的内容的时候,就会产生自增列表断开的问题。
我们想要数据删除后,现在剩下的数据,仍然给我保持一个序列排序,且序号连续。
TRUNCATE TABLE 表名;
这个属性字段,可以给我们把自动增长的属性字段,重新排序。
in子查询,当我们父查询条件选择where 跟的字段接收的结果超过一个的时候用in
in 后面可以接收多个子查询返回结果
# NOT IN 就是对 选择包含的条件进行取反 操作。
# 最终的查询结果,是除了条件赛选出来的内容 以外的所有表数据
连表查询:select 字段 from 一个表 表引用名
inner join 要关联的表名 on 关联字段= 被关联字段
where 查询条件
如果是多个 表查询,用这个连表查询,比较方便。
连表查询,比子查询的优势,就是,可以方便关联多张表,查询关联数据。
Subquery returns more than 1 row 报错:子查询返回的结果超过一条就会报错