MySQL-概述

一、MySQL基础

2.1 含义

(1)由瑞典MySQL AB公司开发,目前属于Oracle公司。
(2)是一个开源的关系型数据库管理系统。
(3)分为社区版和企业版。

2.2 MySQL目录结构

(1)bin目录:存储可执行文件。
(2)data目录: 存储数据文件。
(3)docs目录: 存储文档文件。
(4)include目录: 存储包含的头文件。
(5)lib目录: 存储库文件。
(6)share目录:错误消息或字符集文件。

二、安装MySQL

2.1 安装方式

MSI安装(Windows Installer)
ZIP安装

2.2 安装MySQL

(1)双击MSI安装文件。
(2)最终用户许可协议。同意
(3)选择安装类型:
Typical(典型安装,初学者)Custom(自定义安装)Complete(完全安装)
(4)准备安装。
(5)安装进度。
(6)MySQL产品广告。
(7)MySQL产品广告。
(8)询问是否进行配置操作。

三、配置MySQL

3.1 步骤

(1)运行MySQL配置向导文件(MySQLInstanceConfig.exe)。bin目录中。
(2)配置向导欢迎界面。
(3)选择配置类型
Detailed Configuration(详细配置)
Standard Configuration(标准配置,初学者)
(4)是否安装为Windows服务。
三个复选框可全部勾选。
(5)设置root用户的密码
自己设置,或者默认。
(6)准备执行设置选项。
(7)配置完成。

3.2 配置选项——修改my.ini文档

3.2.1 修改编码方式

[mysql]
default-character-set=utf8
[mysql]
character-set-server=utf8

3.2.2 修改默认存储引擎

[mysql]
default-storage-engine=INNODB

四、使用MySQL

4.1 打开/关闭服务器

(1)图形界面——计算机管理
(2)命令提示符——cmd
启动命令:

net start mysql

停止命令:

net stop mysql

注意:所有Windows计算机管理中的应用程序都可通过以上命令启动/关闭。

4.2 登录服务器

参数 含义
-D,–database=name 打开指定数据库
–delimiter =name 指定分割符
-h,–host=name 服务器名称
-p,–password[=name] 密码
-P,–port=# 端口号
–prompt=name 设置提示符
-u,–user=name 用户名
-V,–version 输出版本信息并且退出。

MySQL登录命令:

mysql uroot -p -P3306 -h127.0.0.1

MySQL退出命令:

mysql > exit
mysql > quit
mysql > \q

4.3 修改MySQL提示符

(1)连接客户端时,通过参数指定

shell>mysql -uroot -proot --prompt

(2)连接上客户端后,通过prompt命令修改

mysql>prompt

清停命令:

cls
参数 含义
\D 完整的日期
\d 当前数据库
\h 服务器名称
\u 当前用户

4.4 MySQL常用命令

需求 命令
显示当前服务器版本 SELECT VERSION();
显示当前日期时间 SELECT NOW();
显示当前用户 SELECT USER();

4.5 MySQL语句的规范

(1)关键字与函数名称全部大写。
(2)标识符采用驼峰式写法。
(3)SQL语句必须以“;”分号结尾。

五、操作数据库

5.1 查看

5.1.1 数据库个数——单服务器

查看当前服务器下的数据库列表
语法:SHOW {DATABASE | SCHEMAS} [LIKE ‘pattern’ | WHERE expr]

SHOW DATABASE;

5.1.2 表个数——单数据库

查看某个数据库中的表数量。
语法:SHOW TABLES[FROM db_name] [LIKE ‘pattern’ | WHERE expr];

-- 查看某个数据库中的表
SHOW TABLES FROM db_t1;
-- 查看服务器中的所有表
SHOW TABLES FROM mysql;

5.1.3 当前运行的数据库名

显示当前已经打开的数据库。
语法:SELECT DATABASE();

SELECT DATABASE();

5.1.4 创建时的SQL语句

5.1.4.1 数据库

查看数据库创建时的SQL语句
语法:SHOW CREATE DATABASE db_name;

SHOW CREATE DATABASE db_t1;

5.1.4.2 表

查看创建表时的SQL语句。
语法:SHOW CREATE TABLE table_name;

SHOW CREATE TABLE t_student;

5.1.5 查看表的结构

语法:SHOW COLUMNS FROM table_name;

SHOW COLUMNS FROM t_student;

5.1.6 查看表的索引情况

语法:SHOW INDEXES FROM table_name;

-- 表格形式展示。
SHOW INDEXES FROM t_student;
-- 网格形式展示。
SHOW INDEXES FROM t_student\G;

5.2 创建数据库

语法:
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [DEFAULT] CHARACTER SET [=] charset_name;
{}:必有。| 选择。[]可有。

CREATE DATABASE IF NOT EXISTS db_t1;
CREATE DATABASE IF NOT EXISTS db_t2 CHARACTER SET = utf8;

5.3 修改数据库

语法:ALTER {DATABASE | SCHEMA} [db_name] [DEFAULT] CHARACTER SET [=] charset_name;

ALTER DATABASE db_t1 CHARACTER SET = utf8;

5.4 删除数据库

语法:DROP {DATABASE | SCHEMA} [IF EXISTS] db_name;

DROP DATABASE IF EXISTS db_t2;

5.5 打开数据库

语法:USE db_name;

USE db_t1;

五、数据库的表操作

数据库成员:表。
表成员:字段(列)+ 记录(行)。

5.1 创建表

语法:
CREATE TABLE [IF NOT EXISTS] table_name(
column_name data_type ,

column_name data_type
)

CREATE TABLE IF NOT EXISTS t_syudent(
  id INT ,
  username TINYINT UNSIGNED NOT NULL,
  salary FLOAT(7,2) UNSIGNED NULL,
  sex ENUM('男','女','保密') DEFAULT '保密'
);

5.2 修改表

5.2.1 增加单列

语法:
ALTER TABLE table_name ADD[COLUMN] column_name column_definition [FIRST | AFTER column_name;

ALTER TABLE t_student ADD clazz TINYINT UNSIGNED NOT NULL DEFAULT 1 AFTER username;

5.2.2 增加多列

语法:
ALTER TABLE table_name ADD[COLUMN] (column_name column_definition,…);

ALTER TABLE t_student ADD (clazz1 TINYINT UNSIGNED NOT NULL DEFAULT 1,clazz2 TINYINT UNSIGNED NOT NULL DEFAULT 1);

5.2.3 删除单列

语法:
ALTER TABLE table_name DROP[COLUMN] column_name;

ALTER TABLE t_student DROP clazz2;

5.2.4 删除多列

语法:
ALTER TABLE table_name DROP[COLUMN] column_name,DROP[COLUMN] column_name;

ALTER TABLE t_student DROP clazz1,DROP clazz2;

-- 增加clazz时,同时删除clazz1
ALTER TABLE t_student ADD clazz TINYINT UNSIGNED NOT NULL DEFAULT 1 AFTER username,DROP clazz1;

5.2.5 修改单列

(1)修改列定义
语法:
ALTER TABLE table_name MODIFY[COLUMN] column_name column_definition [FIRST | AFTER column_name];

ALTER TABLE t_student MODIFY id SMALLINT UNSIGNED NOT NULL FIRST;

(2)修改列名称
语法:
ALTER TABLE table_name CHANGE[COLUMN] old_column_name new_column_name column_definition [FIRST | AFTER column_name];

ALTER TABLE t_student CHANGE id pid SMALLINT UNSIGNED NOT NULL FIRST;

5.2.6 修改表名

语法一:
ALTER TABLE table_name RENAME[TO | AS] new_table_name;
语法二:
RENAME TABLE table_name TO new_table_name,table_name TO new_table_name;

ALTER TABLE t_student RENAME t_student2;

六、表的行操作

参见《MySQL-单表(行操作)》。

猜你喜欢

转载自blog.csdn.net/lizengbao/article/details/86766637
今日推荐