MySql简介:
MySql的优势?
运行速度快,使用成本低,可移植性强,适用用户广
MySql分为两个版:
社区版:免费,开源,适合普通用户
企业版:收费,不可自由下载:功能和服务更完善:适合对功能和安全要 求高的企业用户
命令行操作MySQL?
net stop mysql : 停止mysql 服务
net start mysql : 启动mysql 服务
命令行连接MySQL?
mysql -h服务器主机地址(本机可省略) -u用户名 -p密码(可省略,回车输密码)
命令行创建数据库?
create database myschool; //创建数据库
(Query OK:SQL语句执行成功)···(1 row affected:操作影响的行数)(0.00sec : 操作执行时间)
show database myschool; //查看当前数据库是否存在MySql数据库中
DESCRIBC 表名;或 DESC 表名;//查看表定义
use myschool; //使用数据库
drop database myschool;//删除数据库
show engines //查询所有存储引擎
避免DOS窗口乱码,可执行SET NAMES gbk;
结构化查询语言!
DML(数据操作语言)?
用来操作数据库中所包含的数据:insert,update delete
DDL(数据定义语言)?
用于创建和删除数据库对象等操作:CREATE,DROP,ALTER
DQL(数据查询语言)?
用来对数据库中的数据进行查询:SELECT
DCL(数据控制语言)?
用来控制数据库组建的存取许可,存储权限等:GRANT,COMMIT,ROLLBACK
MySQL数据类型--数值类型?
UNSIGNED属性:标识为无符号数
ZEROFILL属性: 宽度(位数)不足以0填充
示例:
若某数值字段指定了ZEROFILL属性,将自动添加UNSIGNED属性
MySQL数据类型--字符串/日期类型?
存储:MySQL字符串:CHAR[10]存储,不足10位时以空格填充VARCHAR[10], 按实际大小存储
创建表?
[IF NOT EXISTS]:检查表是否存在,可省略
CREATE TABLE [IF NOT EXISTS] 表名
(`字段1` 数据类型 [字段属性|约束][索引][注释],
`字段2` 数据类型 [字段属性|约束][索引][注释].......
);[表类型][表字符集][注释];
示例:
PRIMARY KEY:表示这张表中的studenyNo是主键
字段的约束及属性?
删除表?
DROP TABLE [IF EXISTS] 表名;
示例:USE myschool
DROP TABLE IF EXISTS `student`;
在删除表之前先使用IF EXISTS 语句验证表是否存在
MySQL的存储引擎?
存储引擎的类型:
MyISAM - InnoDB - Memory - CSV等9种
MyISAM与InnoDB类型主要区别:
适用场合:
使用MyISAM:不需事物 空间小 以查询访问为主
使用InnoDB: 多删除 更新操作 安全性高 事物处理及并发生控制
默认引擎为 InnoDB
查看当前默认存储引擎:SHOW VAElABLES LIKE `storage_engine%`
修改存储引擎,修改my.in 配置文件 default - storage - engine =InnoDB
设置表的存储引擎?
CREATE TABLE 表名(#省略代码)ENGINE=存储引擎
示例:
CREATE TABLE `myisam` ( `id` INT(4))ENGINE=MySAM;
数据库的存储位置?
MyISAM类型表文件
(1) *.frm : 表结构定义文件
(2) *.MYD : 数据文件
(3) *.MYI : 索引文件
InnoDB类型标文件
(1) *.frm : 表结构定义文件
(2)ibdatal 文件