目录
35.1什么是数据库?
数据库(Database DB)是按照数据结构来组织、存储和管理数据的仓库(存储数据的仓库),它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。
在信息化社会,充分有效地管理和利用各类信息资源,是进行科学研究和决策管理的前提条件。数据库技术是管理信息系统、办公自动化系统、决策支持系统等各类信息系统的核心部分,是进行科学研究和决策管理的重要技术手段。
35. 2为什么需要数据库。
现在很多项目的数据需要存储到数据库中,---便于查询。---相应的业务。
35.3 数据库的种类
Oracle数据库 ---一般用于安全系数高的。比如银行系统
SqlServer数据库、---微软的数据库。---配合计算机语言。.net
Mysql数据库. ---oracle公司---中小型企业会使用这款数据库。--阿里也使用的是MySQL。
hbase数据库。---大数据
35.4 DDL语言
> Data declare language 数据定义语言。 用于定义表结构。
> 其语句包括动词CREATE,ALTER和DROP。在数据库中创建新表或修改、删除表(CREATE TABLE 或 DROP TABLE);为表加入索引等。
> mysql是一个关系型数据库,库里面包含若干个表,而每一张表都是由行和列组成。
35.4.1 数据库的操作
(1)创建数据库
create database 数据库名; -- 符合命名规则即可
(2)删除数据库
drop database 数据库名;
(3) 查询所有库show (展示)
show databases;
(4)切换库
use 数据库名;
35.4.2 关于表的操作
语法:
create table 表名(
列名 数据类型,
列名 数据类型,
列名 数据类型
)
create table tbl_student(
id int,-- 学生编号
name varchar(20),-- 学生姓名
tuition decimal(10,2),-- 学费
sex char(2),-- 性别
birthday date -- 出生日期
);
最后一列不需要逗号
数据类型: mysql中常见的数据类型有哪些?
varchar(长度) ---表示可变的字符串65535。长度表示最多可以输入的内容个数
char(长度) ----表示不可变的字符串255。长度固定的。适合固定长度的内容。
text() ---文本字符串--
int----表示整数
double--表示小数。
decimal--表示小数,设置小数点的位数。decimal(10,2)
date: 表示日期类型
datetime: 表示日期时间类型。
(2)查看当前数据库中有哪些表?
show tables;
(3) 删除表
drop table 表名;
(4)修改表结构
-- 删除表结构中指定的列
alter table 表名 drop column 列名;
-- 添加指定的列
alter table 表名 add column 列名 数据类型;
-- 修改列名
alter table 表名 change column 列名 新名 数据类型;
-- 修改列的数据类型
alter table 表名 modify column 列名 新数据类型
-- 删除表中某列
alter table tbl_student drop column sex;
-- 增加某一列
alter table tbl_student add column address varchar(50);
-- 修改列名
alter table tbl_student change column address dz varchar(50);
-- 修改列的数据类型
alter table tbl_student modify column birthday datetime;
35.4.3 设计表的约束
什么是约束?
就是在表中为某些==列==添加约束,使该列得值必须符合这个约束。
分类:
什么时候可以添加这种约束:
<1>创建表时添加
create table tbl_emp(
id int primary key,-- 主键约束(值不能为null且不能重复)
name varchar(20) unique, -- 唯一约束(值不能重复,但是可以为null)
sex char(2) default '男', -- 默认约束。(默认值为男)
age int check (age>18 and age<60), -- 检查约束
salary DECIMAL(10,2) not null -- 非空约束 必须添值
);
-- 验证约束是否起效---添加数据
insert into tbl_emp(id,name,sex,age,salary) values(1,'欧炜健','女',20,66666);
insert into tbl_emp(id,name,sex,age,salary) values(2,'赖林龙','男',25,88888);
insert into tbl_emp(id,name,age,salary) values(3,'吴韩煜',25,88888);
insert into tbl_emp(id,name,age) values(4,'胡荣纯',19);
<2>表结构创建好后添加约束--表里面尽量不要有数据
-- 添加唯一约束
alter table 表名 add constraint 约束名 unique(列名);
-- 检查约束
alter table 表名 add constraint 约束名 check(条件);
-- 非空约束
alter table 表名 modify 列名 数据类型 not null;
-- 主键约束
alter table 表名 add CONSTRAINT 约束名 primary key(列名)
<3>外键约束
外键约束用来让两张图的数据之间建立连接,保证数据的一致性和完整性。
表结构创建之后添加
alter table 表名 add contraints 约束名 foreign key (列名) reference 参考的表名(列)