基础概念
数据库:存储和管理数据的仓库,这里是逻辑上的概念。
数据库管理系统:操作和管理数据库的软件。
常见的DBMS有哪些?
MySQL,Oracle,Redis,MongoDB,sql-server等等
关系数据库
关系:描述两个元素间的关联或者对应关系。
使用关系模型把数据组织到二维数据表中。
产品化的代表有Oracle、DB2、SQL Server、MySQL、MariaDB
库和表
表是数据的集合,一组具有相同属性的数据保存在一张表上。
表的行(Row)是横排数据,也被称作记录(Record)
表的列(Column)是纵列数据,也被称作字段(Field)
表和表之间存在关联关系。
库是表的集合,不同的项目都可以创建一个库,用来储存不同的表。
SQL语句分类
DDL:Define 数据定义语言[库操作,表操作,视图操作,索引操作],
DML:Manage 数据操作语言[表记录的删改],
DQL:Query 数据查询语言[表记录查询],
DCL:Control 数据控制语言[用户和权限相关],
TCL:Transaction 事务控制语言[事务操作,比如begin commit,rollback]
DDL
DDL数据库
创建数据库:
create databases 数据库名 charset='指定字符集';
切换数据库:
use 数据库名;
删除数据库
drop databases 数据库名;
DDL表
创建表
create table 表名(
字段名 数据类型 [default默认值] [约束]
) charset='指定字符集'
查看表结构
desc 表名字
查看建表语句
show create table 表名
查看所有表信息
show tables
修改表名
rename table 老名字 to 新名字
修改表结构
添加字段
alter table 表名 add 字段名 数据类型 [first(加在最前),after(插入)]
alter table 表名 drop 字段名 // 删除字段
删除表
drop table 表名
修改字段
alter table 表名 change 老字段名 新字段名 类型 [约束]
修改表结构最好是在表中没有数据的情况下进行修改,如果表中已经存在数据,尽量不要修改字段类型,否则可能导致表中该字段原有的数据不符合新修改的类型而导致修改失败。字段的长度尽量不要缩短,否则可能由于该表中该字段的值已经超过了修改后的长度导致修改失败。为字段添加新的约束时候,要保证表中该字段原有的数据不违背该约束要求。