mysql数据库基本知识
2015-11-06 09:32
513 查看
一、库操作
创建数据库:creat database 'mydababase1';creat database if not exists 'mydababase1' //只有两个选项
查询数据库: show databases;\\存在什么库 show create database 库名;\\查看库定义
改:alter databse 'cys1' charset gbk;//只能更改库选项
删除:drop database 'cys1'; drop dababase if exists 'cys1';//假如存在删除
二、表操作 表本身和结构操作
创建:create table stu(
id int,
name varchar(255)
)engine=innodb charset=utf8;
查看:show tables like ‘cys_’; show create table ‘tablename’;desc 表名
修改:alter table 表名 新选项 //改表选项
alter table 旧表名 to 新表名
字段操作:
增:alter table 表名 add column 字段名 字段类型 [字段位置] //after first
删:alter table 表名 drop column 字段名;
改:alter table 表名 modify column 字段名 字段类型 新的定义!
删除:drop table if exists 表名
三、数据操作
增:insert into 表名 (字段列表) values (与字段相对的值列表)
删:delete from 表名 where 条件
改:update 表名 set 字段=新值, 字段n=新值n where 条件
查:select 字段列表 from 表名 [where 条件表达式]
四、校对集
利用 show collation; 查看到所有的校对集!
校对集,指的是,在某个字符集下,字符的排序关系应该是什么,称之为校对集!
典型的后缀:
_bin 二进制编码层面直接比较:
_ci 忽略大小写(大小写不敏感)比较
_cs 大小写敏感比较
五、数据类型
1、整型
2、浮点数 float double
3、定点数,decimal
4、字符串类型 char varchar text
5、枚举,enum,单选 name enum('male','femal','secret')
6、集合 set 复选
7、日期 datetime timestamp date year time
六、列属性 字段约束 primary unique
default 默认
current_timestamp,用在第一个时间戳类型的字段上,表示当前的时间!
字段名 timestamp default current_timestamp,
主键约束:primary 唯一约束unique 增删改查
自动增长:auto_increment (id int primary key auto_increment)
注释: comment
七、关系表设计规范
第一范式:字段原子性
第二范式:非部分依赖 给定一个主键,只能提取一条记录,且该主键不能是复合主键(多个字段组成主键)
第三范式:非依赖传递 给定一个主键,只能提取一条记录,且该主键不能是复合主键(多个字段组成主键)
八、实体之间关系
多对一,一对多(分类时容易导致这种关系)
多对多:新建一个表对应关系表,拆分成两个多对一
一对一:相同主键
创建数据库:creat database 'mydababase1';creat database if not exists 'mydababase1' //只有两个选项
查询数据库: show databases;\\存在什么库 show create database 库名;\\查看库定义
改:alter databse 'cys1' charset gbk;//只能更改库选项
删除:drop database 'cys1'; drop dababase if exists 'cys1';//假如存在删除
二、表操作 表本身和结构操作
创建:create table stu(
id int,
name varchar(255)
)engine=innodb charset=utf8;
查看:show tables like ‘cys_’; show create table ‘tablename’;desc 表名
修改:alter table 表名 新选项 //改表选项
alter table 旧表名 to 新表名
字段操作:
增:alter table 表名 add column 字段名 字段类型 [字段位置] //after first
删:alter table 表名 drop column 字段名;
改:alter table 表名 modify column 字段名 字段类型 新的定义!
删除:drop table if exists 表名
三、数据操作
增:insert into 表名 (字段列表) values (与字段相对的值列表)
删:delete from 表名 where 条件
改:update 表名 set 字段=新值, 字段n=新值n where 条件
查:select 字段列表 from 表名 [where 条件表达式]
四、校对集
利用 show collation; 查看到所有的校对集!
校对集,指的是,在某个字符集下,字符的排序关系应该是什么,称之为校对集!
典型的后缀:
_bin 二进制编码层面直接比较:
_ci 忽略大小写(大小写不敏感)比较
_cs 大小写敏感比较
五、数据类型
1、整型
2、浮点数 float double
3、定点数,decimal
4、字符串类型 char varchar text
5、枚举,enum,单选 name enum('male','femal','secret')
6、集合 set 复选
7、日期 datetime timestamp date year time
六、列属性 字段约束 primary unique
default 默认
current_timestamp,用在第一个时间戳类型的字段上,表示当前的时间!
字段名 timestamp default current_timestamp,
主键约束:primary 唯一约束unique 增删改查
自动增长:auto_increment (id int primary key auto_increment)
注释: comment
七、关系表设计规范
第一范式:字段原子性
第二范式:非部分依赖 给定一个主键,只能提取一条记录,且该主键不能是复合主键(多个字段组成主键)
第三范式:非依赖传递 给定一个主键,只能提取一条记录,且该主键不能是复合主键(多个字段组成主键)
八、实体之间关系
多对一,一对多(分类时容易导致这种关系)
多对多:新建一个表对应关系表,拆分成两个多对一
一对一:相同主键
相关文章推荐
- MySQL丢数据及主从数据不一致的场景
- mysql 清空表 Truncate及delete区别
- mysql设置数据库和表字符集以支持emoj表情
- mysql 循环插入记录
- MySQL与JDBC类型映射
- mysql存储过程的参数名不要跟字段名一样 (血淋淋的代价)
- Mysql安装问题
- 给mysql用户分配权限
- mysql悲观锁总结和实践
- mysql存储过程详解
- MySQL非root用户执行增加用户及用户权限的操作
- mysql 学习记录(二十三)--mysql安装时相关优化
- Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
- MySQL数据库性能优化之缓存参数优化
- ubuntu上使用mysql数据库连接rails项目
- MySQL数据库中缓存管理的思路解析
- Mysql压缩包版的安装方法
- mysqldump参数大全
- [实战]MVC5+EF6+MySql企业网盘实战(14)——思考
- JBoss7部署EJB连接MySQL