目录
-
- SQLyog工具
- 数据库的一些基本操作命令
- 结构化查询语句
- 数据值和列类型
-
- 列类型
- 数据字段属性
- 数据表类型
-
- 数据表的存储位置 :
SQLyog工具
一款可视化操作数据库的工具,简洁,易用,图形化,可是基本的DOS命名大家还是要记住!
下载地址:
打开后可以看到:
点击测试连接;查看是否可以连接成功,进入后:
使用SQLyog管理工具自己完成以下操作 :
- 连接本地MySQL数据库
- 新建MySchool数据库
- 数据库名称MySchool
- 新建数据库表(grade)
-
字段
GradeID : int(11) , Primary Key (pk)
GradeName : varchar(50)
数据库的一些基本操作命令
update user set password=password('123456')where user='root'; 修改密码
flush privileges; 刷新数据库
show databases; 显示所有数据库
use dbname; 选择某个数据库并打开
show tables; 显示数据库mysql中所有的表
describe user; 显示表mysql数据库中user表的列信息
create database name; 创建数据库
exit; 退出Mysql
? 命令关键词 :寻求帮助
#表示注解
help:出现所有帮助
结构化查询语句
名称 | 解释 | 命令 |
---|---|---|
DDL(数据定义语言) | 定义和管理数据对象,如数据库,数据表等 | CREATE、DROP、ALTER |
DML(数据操作语言) | 用于操作数据库对象中所包含的数据 | INSERT、UPDATE、DELETE |
DQL(数据查询语言) | 用于查询数据库数据 | SELECT |
DCL(数据库控制语言) | 用来管理数据库的语言,包括管理权限及数据更改 | GRANT、COMMIT、ROLLBACK |
数据值和列类型
列类型
列类型:规定数据库中该列存放的数据类型
- 数值类型
类型 | 说明 | 取值范围 | 存储需求 |
---|---|---|---|
tinyint | 非常小的数据 | 有符值:-27~27-1 无符值:0~28-1 | 1字节 |
smallint | 较小的数据 | 有符值:-215~215-1 无符值:0~216-1 | 2字节 |
mediumint | 中等大小的数据 | 有符值:-223~223-1 无符值:0~224-1 | 3字节 |
int | 常用整数 | 有符值:-231~231-1 无符值:0~232-1 | 4字节 |
bigint | 较大的整数 | 有符值:-263~263-1 无符值:0~264-1 | 8字节 |
float | 单精度浮点数 | ±1.1754351e -38 | 4字节 |
double | 双精度浮点数 | ±2.225073858507e -308 | 8字节 |
decimal | 字符串形式的浮点数 | decimal(m,d) | m字节 |
- 字符串类型
类型 | 说明 | 取值范围 |
---|---|---|
char[(M)] | 固定长字符串,检索快但费时间,0<=M<=255 | M字符 |
varchar[(M)] | 可变字符串,0<=M<=65535 | 可变长度 |
tinytext | 微型文本串 | 28-1字节 |
text | 文本串 | 216-1字节 |
- 日期和时间型数值类型
类型 | 说明 | 取值范围 |
---|---|---|
DATE | YYYY-MM-DD,日期格式 | 1000-01-01~9999-12-31 |
TIME | Hh:mm:ss,时间格式 | -838:59:59~838:59:59 |
DATETIME | YY-MM-DD hh:mm:ss | 1000-01-01 00:00:00~9999-12-31 23:59:59 |
TIMESTAMP | YYYYMMDDhhmmss格式表示的时间戳 | 197010101000000~2037年的某一个时刻 |
YEAR | YYYY格式的年份 | 1901~2155 |
- NULL值
理解为没有值或未知值,用null进行结果运算,结果还是null
数据字段属性
UnSigned:
- 无符号的
- 声明该数据列不允许负数
ZEROFILL:
- 0填充的
- 不足位数的用0来填充,如int(3),5表示结果为005
Auto_InCrement:
- 自动增长的,没添加一条数据,自动在还是哪个一个记录数上加1(默认)
- 通常用于设置主键,且为整数类型
-
可定义其实质和步长
当前表设置步长( AUTO_INCREMENT=100):只影响当前表
[email protected]@suto_increemnt_increment=5;影响所有使用自增长的表(全局)
NULL和NOT NULL:
- 默认为NULL,即没有插入该列的数值
- 如果设置为NOT NULL,该列必须有值
DEFAULT:
- 默认的
-
用于设值默认值
例如,姓名字段,默认为"男",否则为"女";若无指定该列的值,则默认值为"男"的值
数据表类型
CREATE TABLE 表名{
#省略代码
}ENGINE =MyISAM (or InnoDB)
#查看mysql所支持的引擎类型(表类型)
SHOW ENGINES;
#查看默认引擎
SHOW VARIABLES LIKE 'storage_engine';
Mysql的数据类型的类型有:MyISAM,InnoDB,HEAP,BOB,CSV等…
常见的MyISAM和InnoDB类型比较:
名称 | MyISAM | InnoDB |
---|---|---|
事务处理 | 不支持 | 支持 |
数据行锁定 | 不支持 | 支持 |
外键约束 | 不支持 | 支持 |
全文索引 | 支持 | 不支持 |
表空间大小 | 较小 | 较大,约2倍 |
使用场合:
- 使用MyISAM:节约空间及相应速度
- 使用InnoDB:安全性,事务处理及多用户操作数据表
数据表的存储位置 :
MySQL数据表以文件方式存放在磁盘中
包括表文件 , 数据文件 , 以及数据库的选项文件
位置 : Mysql安装目录\data\下存放数据表 . 目录名对应数据库名 , 该目录下文件名对应数据表 .
注意 :
InnoDB类型数据表只有一个 *.frm文件 , 以及上一级目录的ibdata1文件
MyISAM类型数据表对应三个文件 :
- . frm – 表结构定义文件
- . MYD – 数据文件(data)
- . MYI – 索引文件(index)