YovoY
目录
MySQL
一、认识MySQL
1. CDM登录MySQL服务器

命令格式:mysql -h hostname -u username -p

语法说明如下:

· mysql为登录命令名,存放在 MySQL的安装目录下。

· -h表示后面的参数hostname为服务器的主机地址,当客户端与服务器在同一台机器上时,hostname可以使用localhost或127.0.0.1。

· -u表示后面的参数username为登录MySQL服务的用户名。

· -p则表示后面要输入的参数为指定用户的密码。

2. 查看支持的字符集

show character set;

常用的字符集有:latin1、utf8、gb2312和gbk。

(1) latin1:是系统启动时默认的字符集。

(2) utf8:也称为通用转换格式,是针对Unicode字符的一种变长字符编码。

(3) gb2312和gbk:是简体中文集,而gbk是对gb2312的扩展。

3. 设置字符集

set character_set_client = gbk;
set character_set_results = gbk;
set character_set_connection = gbk;

要更改其他字符集时,只需要将gbk更改为其他字符集即可。

4. 查看数据库文件存储地址

存储引擎不同时,数据库文件存放的位置也不同。可以使用以下语法进行查询:

show global variables like "%datadir%";

二、创建与管理数据库
1. 创建数据库

create database | schema [if not exists] <数据库名>
[ [default] character set <字符集名>] [ [default] collate <校对规则名>];

语法说明如下:

· [ ]中的内容是可选的。

· create database 与 create schema 是完全等价的。

· <数据库名>:创建数据库的名称。注意在MySQL中不区分大小写(但在Linux中是区分大小写的)。

· if not exists:此选项可以用来避免数据库已经存在而重复创建的错误。

· [default] character set:指定数据库的默认字符集。

· [default] collate:指定字符集的默认校对规则。(注:-ci不区分大小写|-cs区分到小写-bin按二进制编码)

2. 查询数据库

(1) 查看当前用户权限范围以内的数据库,其语法格式如下:

show databases [link '数据库名'];

语法说明如下:

· like 从句是可选择的,用于匹配指定的数据库名称。

· 数据库名由单引号' '包围。

(2) 查看指定数据库的信息,其语法格式如下:

show create database 数据库名;

3. 打开数据库

打开数据库的语法格式为:

use 数据库名;

4. 修改数据库(字符集/校对规则)

alter database | schema [数据库名] { [ default ] character set = <字符集名> |
[ default ] collate = <校对规则名> }

语法说明如下:

· alter database | schema 用于更改数据库的全局特性。

· 使用 alter database | schema 需要获得数据库的 alter 权限。

· 数据库名称可以忽略,此时语句对应于默认数据库。

· character set 子句用于更改默认的数据库字符集。

5. 删除数据库

删除数据库后,数据库中的所有表也随之删除,其语法格式如下:

drop database [if exists] <数据库名>;

三、对数据库中表的操作
1. 数据类型
数据类型类型说明说明
整数类型tinyint1字节
smallint2字节
mediumint3字节
int4字节
bigint8字节
浮点类型|定点类型float(p,[s])单精度浮点类型
double(p,[s])或real(p,[s])双精度浮点类型
decimal(p,[s])或numerice(p,[s])定点数类型,默认的精度为10,小数点位数为0
位值类型bit(m)m表示每个值的位数,从1到64
字符串类型char(m)固定长度字符串
binary(m)
varchar(m),varbinary(m)可变长度字符串
tinyblob,tinytext特殊的字符串类型,保存如文章、评论、简历、新闻内容、图片等
blob,text
mediumblob,meduimtext
longblob,longtext
enum('value1','value2', ...)取决于枚举值的数量(最大65535个值)
set('value1','value2', ...)具体取决于集合成员的数量(最多64个成员)
日期时间类型dateYYYY-MM-DD
timehh: mm: ss
datetimeYYYY-MM-DD hh: mm: ss
timestamp与datetime格式相同
year表示年,格式:YYYY
2. 数据完整性实现
约束名作用说明
primary key主键标识主键,使其唯一且不为空
foreign key外键标识外键,用来实现两表数据之间的关系
unique唯一强调表中一列或多列组合的唯一性,可以取一个空值
default默认插入新纪录时自动填充的值
check范围别名(检查约束)限制表中列可接受的值
not null非空表示数据列不允许为空值
auto_increment序列号表中字段都不适合做主键时使用,初始值为1,步长为1
3. 创建表

create table [ if not exists ] <表名>
(<列名 1> <数据类型> [<列级完整性约束条件 1>]
[, <列名 2> <数据类型> [<列级完整性约束条件 2>]] [, ...]
[, <表级完整性约束条件>] [, ...]
)[charset = 'utf8'];

语法说明如下:

(1) 表名:必须符合标识符的命名规则。

(2) 列名:在表中要唯一,必须符合标识符的命名规则。

(3) 列级完整性约束条件:

· check:检查约束,用于检验输入的值是否满足指定的条件。

· 其他见上表

(4) 表级完整性约束条件:

· primary key:主键约束,指名该列或组合列为主键,列值或组合列值唯一。

[ constraint <约束名> ] primary key (列名 1,列名 2,...列名 n)

· foreign key:外键约束,用于设置参照完整性规则,语法如下:

[ constraint <约束名> ] foreign key (外键列) references <被参照的表名 (参照列) >

(5) 在有default '中文' 时需在末尾加上 charset = 'utf8'

4. 查看表

(1) 查看表结构,语法格式如下:

descride <表名>;

(2) 查看表详细结构,语法格式如下:

show create table <表名>;

5. 修改表

alter table <表名>
{ add <新字段名> <数据类型> [<列级完整性约束>] [first | after 已有字段] [, ...]  ——增加列
| add constraint <约束名> <约束类型> <约束设置>                 ——增加约束
| drop { [constraint] <约束名> | colunm <字段名>}             ——删除约束或字段
| change <旧字段名> <新字段名> <新数据类型>                  ——修改字段名
| modify <字段名> <新数据类型> [<列级完整性约束>]           ——修改数据类型或约束
| rename [TO] <新表名>                             ——对表重命名
| engine = <更改的存储引擎名>                        ——修改存储引擎
};

6. 删除表

drop table [if exists] <表名 1> [, ...];

使用drop table 命令一次可以删除一个或多个没有被其他表关联的数据表。

7. 复制表

create table [if not exists] <新表名>
[ like <参照表名>]
| [ [as] (select 语句) ];

语法说明如下:

· like:使用like关键字可以复制表的结构,不会复制内容。

· as:可省略,使用as关键字可以复制表的结构和内容。

Web前端
一、HTML
1. 标签

你好

二、CSS
三、JavaScript
四、功能实现