数据库概念
作用就是用来存储数据和管理数据,本质上就是需要安装MySQL软件.
分类: 关系型数据库MySQL 和 非关系型数据库Redis ,主要观察数据之间的关系
常见的数据库分为:
- 关系型数据库, Oracle、MySQL、SQLServer、Access
- 非关系型数据库, MongoDB、Redis、Solr、ElasticSearch、Hive、HBase
–2,使用
1.安装服务器端: 存数据,管理数据
核心步骤: 设置字符集/编码成 utf-8 , 端口号3306 , 设置服务名称 MySQL , 设置密码root
2.安装客户端: 连接服务器,操作服务器里的数据
小黑窗口/DOS窗口:
–从开始菜单里找MySQL/Mariadb
–win+r 然后输入cmd
bash #发起MySQL的命令 -u是指定用户名(root) -p是指定密码(自定义的) mysql -uroot -proot
图形化的工具:sqlyog
SQL语句
定义
结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
SQL 是1986年10 月由美国国家标准局(ANSI)通过的数据库语言美国标准,接着,国际标准化组织(ISO)颁布了SQL正式国际标准。
分类
DML(Data Manipulation Language)数据操纵语言
如:insert,delete,update,select(插入、删除、修改、检索)简称CRUD操新增Create、查询Retrieve、修改Update、删除DeleteDDL(Data Definition Language)数据库定义语言
如:create table之类DCL(Data Control Language)数据库控制语言
如:grant、deny、revoke等,只有管理员才有相应的权限DQL(Data Query Language)数据库查询语言
如: select 语法
注意:SQL不区分大小写
二,数据库的常见操作
增删改查 CRUD
–1.创建库
–2.查询库
–4.删除库
三.表的常见操作
增删改查 CRUD
–1.使用指定的数据库
–2,创建表
create table 表名(字段名称 字段类型(字段长度),字段2,字段3,...)
练习:
mysql> create table tb_order_detail(
-> id int(11),
-> order_id int(11),
-> num tinyint(4),
-> item varchar(30),
-> price double
-> );
Query OK, 0 rows affected (0.02 sec)
–3,查看表
增删改查 CRUD
mysql> show tables;
+---------------------+
| Tables_in_cgb210901 |
+---------------------+
| tb_door |
| tb_order_detail |
+---------------------+
2 rows in set (0.00 sec)
–4,修改表
mysql> alter table tb_door add column money numeric(7,2);
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
–5,描述表结构
–6,删除表
mysql> drop table tb_door;
Query OK, 0 rows affected (0.00 sec)
四,数据的常见操作
增删改查 CRUD
–1,查询数据/记录
–2,插入数据/记录
语法:insert into 表名 values(1,2,3,4,5,6)
注意:
1, 需要设置几个值?要看表里有几个字段
2, 值的顺序要和字段的顺序保持一致
3, 如果字段是字符串类型,设置值时必须要有" " ’ '的标记
–3,修改数据/记录
–4,删除数据/记录
五,数据库的使用细节
–1,命名规范
1, 以字母开头,不要以数字开头
2, 不能使用保留字:select / from / update / delete / insert into
3, MySQL数据库不区分大小写,多个单词用下划线分开
–2,数据类型
1, 整型:int
2, 小数:double(不精确) / numeric(a,b) / decimal(a,b)–a是数字的位数b是小数位数
3, 时间: date(年月日) time(时分秒) datetime(年月日时分秒) timestamp(时间戳,毫秒数)
4, 字符串: char / varchar
区别:
char 是固定长度,浪费空间char(10)
varchar 是可变长度,节省空间varchar(10)
特殊场景: 数据长度如果就是固定的,优先选char,因为查的快
5, 图片: 如果想存入数据库,只会存文件的磁盘路径D:/abc/1.jpg,不是存文件本身
六, 字段约束
使用的时间: 通常在设计表创建表时就已经确定了
–1,非空约束
哪个字段添加了非空约束,从此,字段值不能为空,使用not null
–2,主键约束
每个表都应该设计主键 , 主键是每条记录/数据的唯一标识.
现象是: 字段的值必须唯一且不能为空,使用primary key
–3,唯一约束
哪个字段添加了唯一约束,从此,字段值不能相同