第二章 初始MySQL
Posted 拾柒moonpie
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二章 初始MySQL相关的知识,希望对你有一定的参考价值。
1.mysql简介
MySQL的优势(适用于中小企业,最重要免费)
(1)运行速度快
(2)使用成本低
(3)可移植强
(4)使用用户广
my.ini:记录MySQL配置信息,可修改配置内容,如端口号,字符集等
2.MySQL运行机制
总的来说,接口连接到连接池有两种情况:(1)验证不成功就会返回到原来
(2)验证成功(如有缓存也会回到上一级)
如未找到缓存就会继续进行SQL接口,解析,查询,优化
到存储引擎(一个一个的数据库)查找相关内容返回
3. 命令执行MySQL
语法: mysql -h服务器主机地址(可省略不写) -u用户名 -p密码
eg:mysql -uroot -proot 或 mysql -uroot -p
如图:
4.创建数据库
语法:create database 数据库名;
eg:create database test_123;
;是结束语,不可缺少
如图:
5.查看数据库列表
语法:show databases;
6.选择数据库
语法: use 数据库名
eg:use mybase;
必须填写存在的数据库,否则会报错
7.删除数据库
语法:drop database 数据库名;
eg:drop database myschool;
8.SQLyong——图形化的MySQL管理工具
优点: 免费 简洁高效 功能强大
9.回顾一下我们的结构化查询语言
(1)DML(数据操作语言):用来操作数据库中所包含数据 eg:insert,update,delete
(2)DDL(数据定义语言):用于创建,删除数据库对对象操作 eg:create,drop,alter
(3)DQL(数据查询语言):用来对数据库中数据进行查询 eg:select
(4)DCL(数据控制语言):用来控制数据库组件的存取许可,存取权限 eg:grant,commit,rollback
10.MySQL数据类型——数值类型
类型 说明 存储需求
(1)TINYINT 非常小的数据 1字节
(2)SMALLINT 较小的数据 2字节
(3)MEDIUMINT 中等大小的数据 3字节
(4)INT 标准整数 4字节
(5)BIGINT 较大整数 8字节
(6)FLOAT 单精度浮点数 4字节
(7)DOUBLE 双精度 8字节
(8)DECIMAL 字符串形式浮点数 M+2字节
UNSIGNED属性:标识为无符号数
ZEROFILL属性:宽度(位数)不足以0填充
11. 字符串类型
类型 说明 长度
CHAR[(M)] 定长字符串 M字节
VCHAR[(M)] 可变字符串 可变长度
TINYTEXT 微型文本串 0-2的8次-1字节
TEXT 文本串 0-2的16次-1字节
12.日期类型
类型 格式 取值范围
DATE YYYY-MM-DD 1001-01-01~9999-12-31
DATETIME YY-MM-DD hh:mm:ss 1000-01-01 00:00:00
TIME hh:mm:ss 838:59:59
TIMESTAMP YYYYMMDDHHMMSS 精度为1秒
YEAR YYYY格式的年份 1901-2155
注意:若某日期字段默认值为当前日期,一般设置TIMESTAMP
13.创建表
语法:
create table 表名( 字段1,数据类型,[字段属性],[约束] [索引][注释],
...................
字段n 数据类型 [字段属性] [约束][索引] [注释]
)[表类型] [表字符集] [注释];
eg:
create table `student`(
`studentNO` INT(4) PRIMARY KEY,
`name` char(10),
............);
注意: 多字段使用逗号分隔
保留字用撇号括起来
单行注释 :#........... 多行注释:/*........*/
14.字段的约束以及属性
名称 关键字 说明
非空约束 NOT NULL 字段不允许为空
默认约束 DEFAULT 赋予某字段默认
唯一约束 UNIQUE KEY(UK) 设置字段的值是唯一的,允许为空,但只能有一个空值
主键约束 PRIMARY KEY(PK) 设置字段为表的主键,可唯一标识该表记录
外键约束 FOREIGIN KEY(PK) 建立两表关系,需要指定引用主表的哪一字段
自动增长 AUTO_INCREMET 自增字段,默认每条自增1,通常用于设置主键
15.(1)主键
eg:
CREATE TABLE student( `studentNo` INT(4) PRIMARY KEY,
……);
(2)注释
eg:
CREATE TABLE test ( `id` int(11) UNSIGNED COMMENT ‘编号’
)COMMENT=\'测试表’ ;
(3)设置字符集编码
eg:
CREATE TABLE [IF NOT EXISTS] 表名(
#省略代码
)CHARSET = 字符集名;
15.查看表是否存在
use myschool 或 show tables
16.查看表定义
describe 表名 或 desc 表名
避免DOS窗口乱码,可执行 SET NAMES gbk;
17.删除
语法: drop table 表名 eg:drop table [IF EXISTS] school;
在删除表之前,先使用 IF EXISTS 语句验证是否错误
18.存储引擎类型
MyISAM,InnoDB,Memory,CSV等
19.MyISAM与InnoDB区别:
名称 InnoDB MyISAM
事务处理 支持 不支持
数据行锁定 支持 不支持
外键约束 支持 不支持
全文索引 不支持 支持
表空间大小 较大,约2倍 较小
适用场合
使用MyISAM: 不需事务,空间小,以查询访问为主
使用InnoDB: 多删除、更新操作,安全性高,事务处理及并发控制
20.帮助功能
help 查询内容; eg: help contents;
以上是关于第二章 初始MySQL的主要内容,如果未能解决你的问题,请参考以下文章