目录
· 一、MySQL的相关概念介绍
· 二、Windows下MySQL的配置
· 配置步骤
· MySQL服务的启动、停止与卸载
· 三、MySQL脚本的基本组成
· 四、MySQL中的数据类型
· 五、使用MySQL数据库
· 登录到MySQL
· 创建一个数据库
· 选择所要操作的数据库
· 创建数据库表
· 六、操作MySQL数据库
· 向表中插入数据
· 查询表中的数据
· 更新表中的数据
· 删除表中的数据
· 七、创建后的修改
· 添加列
· 修改列
· 删除列
· 重命名表
· 删除整张表
· 删除整个数据库
· 八、附录
· 修改 root 用户密码
· 可视化管理工具 MySQL Workbench
MySQL的相关概念介绍
MySQL 为关系型数据库(Relational Database Management System), 这种所谓的"关系型"可以理解为"表格"的概念, 一个关系型数据库由一个或数个表格组成
· 表头(header): 每一列的名称;
· 列(row): 具有相同数据类型的数据的集合;
· 行(col): 每一行用来描述某个人/物的具体信息;
· 值(value): 行的具体信息, 每个值必须与该列的数据类型相同;
· 键(key): 表中用来识别某个特定的人\物的方法, 键的值在当前列中具有唯一性。
Windows下MySQL的配置
以 MySQL 5.1 免安装版为例, 下载 mysql-noinstall-5.1.69-win32.zip( 官方下载页:http://dev.mysql.com/downloads/mysql/5.1.html#downloads )
配置步骤:
1. 将下载的 mysql-noinstall-5.1.69-win32.zip 解压至需要安装的位置, 如: C:\Program Files;
2. 在安装文件夹下找到 my-small.ini 配置文件, 将其重命名为 my.ini , 打开进行编辑, 在 [client] 与 [mysqld] 下均添加一行: default-character-set = gbk
3. 打开 Windows 环境变量设置, 新建变量名 MYSQL_HOME , 变量值为 MySQL 安装目录路径, 这里为C:\ProgramFiles\mysql-5.1.69-win32
4. 在 环境变量 的 Path 变量中添加 ;%MYSQL_HOME%\bin;
5. 安装 MySQL 服务, 打开Windows命令提示符, 执行命令: mysqld --install MySQL --defaults-file="my.ini" 提示"Service successfullyinstalled."表示成功;
MySQL服务的启动、停止与卸载
在 Windows 命令提示符下运行:
启动: net start MySQL
停止: net stop MySQL
卸载: sc delete MySQL
MySQL脚本的基本组成
与常规的脚本语言类似, MySQL 也具有一套对字符、单词以及特殊符号的使用规定,MySQL 通过执行SQL 脚本来完成对数据库的操作, 该脚本由一条或多条MySQL语句(SQL语句 + 扩展语句)组成, 保存时脚本文件后缀名一般为 .sql。在控制台下, MySQL 客户端也可以对语句进行单句的执行而不用保存为.sql文件。
标识符
标识符用来命名一些对象, 如数据库、表、列、变量等, 以便在脚本中的其他地方引用。MySQL标识符命名规则稍微有点繁琐, 这里我们使用万能命名规则: 标识符由字母、数字或下划线(_)组成, 且第一个字符必须是字母或下划线。
对于标识符是否区分大小写取决于当前的操作系统,Windows下是不敏感的,但对于大多数 linux\unix 系统来说, 这些标识符大小写是敏感的。
关键字:
MySQL的关键字众多, 这里不一一列出, 在学习中学习。 这些关键字有自己特定的含义, 尽量避免作为标识符。
语句:
MySQL语句是组成MySQL脚本的基本单位, 每条语句能完成特定的操作, 他是由 SQL 标准语句 + MySQL 扩展语句组成。
函数:
MySQL函数用来实现数据库操作的一些高级功能, 这些函数大致分为以下几类: 字符串函数、数学函数、日期时间函数、搜索函数、加密函数、信息函数。
MySQL中的数据类型
MySQL有三大类数据类型, 分别为数字、日期\时间、字符串, 这三大类中又更细致的划分了许多子类型:
· 数字类型
· 整数:tinyint、smallint、mediumint、int、bigint
· 浮点数:float、double、real、decimal
· 日期和时间: date、time、datetime、timestamp、year
· 字符串类型
· 字符串:char、varchar
· 文本:tinytext、text、mediumtext、longtext
· 二进制(可用来存储图片、音乐等): tinyblob、blob、mediumblob、longblob
具体如下表所示。1、整型
| MySQL数据类型 |
含义(有符号) |
| tinyint(m) |
1个字节 范围(-128~127) |
| smallint(m) |
2个字节 范围(-32768~32767) |
| mediumint(m) |
3个字节 范围(-8388608~8388607) |
| int(m) |
4个字节 范围(-2147483648~2147483647) |
| bigint(m) |
8个字节 范围(+-9.22*10的18次方) |
取值范围如果加了unsigned,则最大值翻倍,如tinyint unsigned的取值范围为(0~256)。
int(m)里的m是表示SELECT查询结果集中的显示宽度,并不影响实际的取值范围,没有影响到显示的宽度,不知道这个m有什么用。
2、浮点型(float和double)
| MySQL数据类型 |
含义 |
| float(m,d) |
单精度浮点型 8位精度(4字节) m总个数,d小数位 |
| double(m,d) |
双精度浮点型 16位精度(8字节) m总个数,d小数位 |
设一个字段定义为float(5,3),如果插入一个数123.45678,实际数据库里存的是123.457,但总个数还以实际为准,即6位。
3、定点数
浮点型在数据库中存放的是近似值,而定点类型在数据库中存放的是精确值。 4、字符串(char,varchar,_text) MySQL数据类型 含义 char(n) 固定长度,最多255个字符 varchar(n) 固定长度,最多65535个字符 tinytext 可变长度,最多255个字符 text 可变长度,最多65535个字符 mediumtext 可变长度,最多2的24次方-1个字符 longtext 可变长度,最多2的32次方-1个字符 char和varchar:
decimal(m,d) 参数m<65 是总个数,d<30且 d
1.char(n) 若存入字符数小于n,则以空格补于其后,查询之时再将空格去掉。所以char类型存储的字符串末尾不能有空格,varchar不限于此。
2.char(n) 固定长度,char(4)不管是存入几个字符,都将占用4个字节,varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),所以varchar(4),存入3个字符将占用4个字节。
3.char类型的字符串检索速度要比varchar