1. 数据库能够做什么
存储大量数据,方便检索和访问
保持数据信息的一致、完整
共享和安全
通过组合分析,产生新的有用信息
2. 数据库和应用程序
应用程序
作用:响应操作并显示结果、向数据库请求数据
要求:美观、操作简单方便
数据库
作用:存储数据、检索数据、生成新的数据
要求:统一、安全、性能等
3. MySQL简介
MySQL的优势
运行速度快
使用成本低
可移植性强
适用用户广
社区版
免费,开源
适合普通用户
企业版
收费,不可自由下载
功能和服务更完善
适合对功能和安全要求高的企业用户
4. MySQL的运行机制
5. MySQL的配置
使用配置向导配置
端口号:3306
默认字符集:utf8(一种Unicode编码,解决国际上字符不统一的多字节编码,通用性强)
将bin目录写入
环境变量
root密码设置
6. 命令行连接MySQL
检查是否启动服务
DOS命令net start mysql
如果修改了配置文件,必须重启MySQL服务才能生效mysql –h服务器主机地址 –u 用户名 –p密码
示例:mysql –u root –proot
mysql –u root – p
DOS下运行
MySQL Command Line Client
默认root登录,仅输入密码
7. 结构化查询语言
SQL(Structured Query Language):结构化查询语言
8. SQL中的运算符
算术运算符
一种符号,它是用来进行列间或者变量之间的比较和数学运算
包括算术运算符、赋值运算符、比较运算符、逻辑运算符
赋值运算符
逻辑运算符
比较运算符
8. 系统数据库和用户数据库
9. 创建数据库
语法CREATE DATABASE 数据库名;
示例CREATE DATABASE myschool;
10. 查看数据库列表
语法SHOW databases;
11. 选择数据库
语法USE 数据库名;
示例USE mybase;
USE myschool;
使用数据前必须先选择该数据库!
12. 删除数据库
语法DROP DATABASE 数据库名;
示例DROP DATABASE myschool;
13. MySQL数据类型—数值类型
UNSIGNED属性
标识为无符号数
ZEROFILL属性
宽度(位数)不足以0填充
示例CREATE TABLE `tb_type` (sid` INT(4) ZEROFILL);
INSERT INTO ` tb_type1 ` VALUE(12) ,(1234),(123456);
若某数值字段指定了ZEROFILL属性,将自动添加UNSIGNED属性。
14. MySQL数据类型—字符串、日期类型
15. 创建表
语法CREATE TABLE [IF NOT EXISTS] 表名 (
字段1 数据类型 [字段属性|约束][索引][注释],
……
字段n 数据类型 [字段属性|约束][索引][注释]
)[表类型][表字符集][注释];
示例#创建学生表
CREATE TABLE `student`(
`studentNo` INT(4) PRIMARY KEY,
`name` CHAR(10),
……);
16. 字段的约束及属性
主键CREATE TABLE student(
`studentNo` INT(4) PRIMARY KEY,
……);
注释CREATE TABLE test (
`id` int(11) UNSIGNED COMMENT ‘编号’
)COMMENT='测试表’ ;
设置字符集编码CREATE TABLE [IF NOT EXISTS] 表名(
#省略代码
)CHARSET = 字符集名;
17. 查看表
查看表是否存在
示例USE myschool;
SHOW tables;
语法DESCRIBE 表名;
或
DESC 表名;
示例USE myschool;
DESCRIBE `student`;
18. 删除表
语法DROP TABLE [IF EXISTS] 表名;
示例USE myschool;
DROP TABLE IF EXISTS `student`;
在删除表之前,先使用IF EXISTS语句验证表是否存在
19. 修改表
语法#修改表名
ALTER TABLE 旧表名 RENAME [TO] 新表名;#添加字段
ALTER TABLE 表名 ADD 字段名 数据类型 [属性];#修改字段
ALTER TABLE 表名 CHANGE 原字段名 新字段名 数据类型 [属性];#删除字段
ALTER TABLE 表名 DROP 字段名;
示例DROP TABLE IF EXISTS `demo01`;
#创建表
CREATE TABLE `demo01`(
`id` INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
`name` VARCHAR(8) NOT NULL
);
#修改表名
ALTER TABLE `demo01` RENAME `demo02`;
#添加字段
ALTER TABLE ` demo02 ` ADD `password` VARCHAR(32) NOT NULL;
#修改字段
ALTER TABLE ` demo02 ` CHANGE `name` `username`CHAR(10) NOT NULL;
#删除字段
ALTER TABLE ` demo02 ` DROP `password`;
20. 添加主键
语法ALTER TABLE 表名 ADD CONSTRAINT 主键名
PRIMARY KEY 表名(主键字段);
21. 添加外键
语法ALTER TABLE 表名 ADD CONSTRAINT 外键名
FOREIGN KEY(外键字段)
REFERENCES 关联表名(关联字段);
22. MySQL系统帮助
语法HELP 查询内容;
示例HELP contents;
HELP Data Types;
HELP INT;
23. 总结