数据库基础
1.数据库认识
1.什么是数据库
数据库:是由一批数据构成的有序的集合,这个集合通常被保存为一个或多个文件中。
数据库:(DataBase) 有一个或者多个数据表(Table)组成,数据表是有多个字段(数据表中的各个数据的键)构成。
2.数据库类型
(1).关系型数据库
关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。
关系型数据库:MySQL,Oracle,SQL Server, DB2
(2).非关系型数据库(NoSQL)
NoSQL,泛指非关系型的数据库,例如:MongoDB
SQL语句
1.使用SQL语句插入数据
在SQL语句的编辑区域,我们使用insert语句向数据表当中插入数据。然后呢,点击执行按钮向数据库表当中插入一条数据。
1.1. INSERT INTO 'TABLENAME' VALUES(null|id,value1,vaulu2)
如果id为自增字段,必须将id字段以''||null 占位,这种方式values 字段值 必须按照数据库表中字段的顺序插入。
INSERT INTO users VALUES(NULL,'HUSKYUNCLE','123456','18682212158');
1.2. INSERT INTO 'TABLENAME' (KEY2,KEY1,KEY3...) VALUES(VALUE2,VALUE1,VALUE3...)
这种方式 (key) values (value) ,key不一定按照原有数据表中的顺序来展示(不一定写所有的字段),values根据key的顺序排列
INSERT INTO users (`password`,`username`,`phonenum`) VALUES('234567','abc','15332223467')
2.使用SQL语句修改数据
UPDATE TABLENAME SET 字段1='字段1值' WHERE 条件语句(WHERE 子句)
UPDATE users SET username='aaaa' WHERE id=3
-- UPDATE `users` SET `id`=[value-1],`username`=[value-2],`password`=[value-3],`phonenum`=[value-4] WHERE 1
3.删除数据
DELETE FROM TABLENAME WHERE 子句
DELETE FROM `users` WHERE USERNAME='123123'
4.查询数据
4.1. SELECT * FROM TABLENAME
(查询表中所有数据,多个表的话,可以以逗号隔开表名)
4.2. SELECT column_name,column_name,... FROM TABLENAME
(查询表指定字段的数据,多个表的话,可以以逗号隔开表名,按照 tablename.column_1的形式查询指定表的指定字段的数据)
SELECT name,price FROM `tab_goods`
- 查询语句中可以使用一个或者多个 表,表之间使用逗号(,)分割,并使用where语句设定查询的条件
- SELECT 语句可以读取一条或者多条记录
- 你可以使用星号(*)来代替其他字段,SELECT 语句会返回表的所有字段数据
- 如果查询多张表数据,查询对应字段时,按照 tablename.column_1的形式查询指定表的指定字段的数据。
4.3. 给表重命名
使用"as"命令给表临时重命名,也可以不加"as"
SELECT * FROM `TABNAME1` as `a`,`TABLENAME2` as `b`
--重命名后可以根据重命名的表名称 调用对应字段。
-- 使用as
SELECT `a`.`id`,`a`.`name`,`a`.`price`,`b`.`username`,`b`.`password` FROM `tab_goods` as `a`,`users` as `b`
-- 不使用as
SELECT `a`.`id`,`a`.`name`,`a`.`price`,`b`.`username`,`b`.`password` FROM `tab_goods` `a`,`users` `b
5.WHERE子句
如果需要有条件的从表中选取数据,可以将WEHRE子句添加至SELECT,UPDATE,DELETE语句中。
1.查询语句中可以使用一个或者多个表,表之间使用逗号(,)分割,并使用where语句设定查询的条件
2.你可以在WHERE子句中指定任何条件。
3.使用AND 或者OR指定一个或多个条件。
4.有多个操作符,可以适用于WHERE子句中
操作符 | 描述 |
---|---|
= | 等号,检测两个值是否相等,如果相等则返回true |
<>,!= | 不等于,检测两个值是否相等,如果不相等则返回true |
> | 大于号 |
< | 小于号 |
>= | 大于等于 |
<= | 小于等于 |
// 等于 and(并且)
SELECT * FROM `tab_goods` WHERE id=4;
SELECT * FROM `tab_goods` WHERE `name`='iphone7' AND `price`=7 AND `count`<100
//< > <= >= !=
// 或者
SELECT * FROM `tab_goods` WHERE `name`='iphone7' OR `count`<100
BINARY关键字
使用BINARY关键字来设定WHERE子句的字符串区分大小写。
SELECT * FROM `tab_goods` WHERE BINARY `name`='iphone'