MySql基础篇
数据库 :专业存储数据的软件 里面数据存储是有一定的规则
可以使用数据库操作语言sql,实现方便,高效的数据管理(增,删,改,查)
为什么使用数据库?
数据持久化到本地 (java程序中产生数据在对象中存储,而对象在内存中存储)
为了方便,高效的数据管理, 使用文件管理数据不太方便.
数据库管理系统(软件) 数据库是简称
管理数据: 使用sql语言对数据进行操作
存储数据: 按照特定的规则存储数据.
DB 数据库 简称
DBMS 数据库管理系统 全称
SQL 结构化查询语言 是数据库通用操作语言 但是不通的数据库语法上略微有分别
sql是一种编程语言,用于数据库管理的
– 注释
- 创建数据库
create database 数据库名 charset utf8(字符集)
- 创建数据库并判断是否存在
create database if not exists charset utf8
- 删除数据库
drop database 数据库名
- 修改数据库字符集(注意mysql中不支持修改数据库名)
alter database 数据库名 charset utf8
设 计 表
create table 表名(
内容
)
对于具体的某一个表,在创建之前,需要确定表的下列特征
- 表名(表信息)
- 表中的字段
- 字段的数据类型和长度
- 哪些约束
数据类型
- 字符类型是需要给定长度的
- char(4) 定长(长度是固定的 例如给定长度是4,即使存储了一个字符,仍占4个长度)
- varchar(4) 最大存储4个字符,如果只存储了1个字符,那么就占1个长度
- date 年月日
- datetime 年月日 时分秒
- 整数 tinyint 1 smallint 2 mediumint 3 int 4 bigint 8
- 浮点数 float 4 double 8
- BLOB(大容量,可以用来存储图片) text(大容量的字符串)例如新闻、小说
创建表 并添加约束
M:精度,数据的总长度;
D:标度,小数点后的长度
Float(6,2)、Double(6,2)
check (height<2.5) 约束
-
primary key
– 主键约束: 每张表可以添加一个主键约束,不能为空,不能重复,可以表示表中唯一的一条记录 -
not null
– 不能为空约束: 值不能为空 主键一张表只能有一个 不能为空,不能重复可以是多个列 -
unique
– 唯一约束: 值不能重复 -
检查约束(自定义条件)
– 外键约束(多表关联时讲) -
auto_increment
– mysql 支持主键自动增长AUTO_INCREMENT 要设置自增,必须是整数类型 -
comment
字段注释
编辑表
-
删除表
drop table if exists 表名 -
修改表明
rename table stu to student -
修改列 modify或change
语法:
ALTER TABLE 表名 MODIFY 原字段名 修改后的数据类型;
ALTER TABLE 表名 change 原字段名 修改后的字段名 数据类型; -
modify 或 change 区别:
modify 用于修改数据类型,不对字段名称做修改;
change 用于修改数据类型,以及字段名称;不修改的地方保持不变即可 -
复制表结构
create table stu like student
向表中插入值
- 插入列
ALTER TABLE tb_user ADD COLUMN userid INT
– DML 数据操作语句(对数据进行操作) insert delete update
– 注册 网页中输入数据—>java—>jdbc—>数据拼接到sql中—>发送到mysql中执行
– 向数据库插入数据 no是自动增长的,不需要设置值
- insert into biaoming (数据标签) value(‘自己要添加的数据’)
- – 将查询中结果插入到指定表中
insert into stu(数据标签)select 数据标签 from student - 修改表数据
update 表名 set 标签=自己添加 where no=2 - 删除表中数据
delete from 表名 - 删除表格式
drop table 表名