首页 技术 正文
技术 2022年11月14日
0 收藏 843 点赞 2,855 浏览 2000 个字

本文是MySQL中的一些基本知识,包括各种基本操作、数据类型和表的约束等。

ps:都是自己总结、手打出来的,虽然不是什么新东西,但也勉强算原创吧。。

一、数据库

1.创建:CREATE DATABASE 数据库名 (CHARACTER SET 字符集) (COLLATE 校对规则);

2.查看:(1)SHOW DATABASES;

(2)SHOW CREATE DATABASE 数据库名;

3.修改:ALTER DATABASE 数据库名 (CHARACTER SET 字符集) (COLLATE 校对规则);

4.删除:DROP DATABASE 数据库名;

5.备份:cmd:mysqldump -u用户名 -p密码 数据库名>文件名.sql

恢复:cmd:mysql -u用户名 -p密码 数据库名<文件名.sql    或:mysql:SOURCE 文件名.sql;

二、表

1.创建:CREATE TABLE 表名 (列名1 数据类型, 列名2 数据类型,……) (CHARACTER SET 字符集) (COLLATE 校对规则);

2.查看、删除基本和数据库操作相同。另:可用DESC 表名; 来查看表结构。

3.修改:ALTER TABLE 表名

(1)增加列:ADD (列名 数据类型,……);

(2)删除列:DROP 列名;

(3)修改列数据类型:MODIFY 列名 新数据类型;

(4)修改列名:CHANGE 列名 新列名 数据类型;

(5)修改表字符集:CHARACTER SET 字符集;

4.重命名表:RENAME TABLE 表名 TO 新表名;

三、数据操作(CRUD):

>>进行与表有关的操作之前都要先USE 数据库,以选择要操作的数据库。

1.增:INSERT INTO 表名 (列名1,…) VALUES (值1,…);

2.删:DELETE FROM 表名 (WHERE 条件);   其中,(WHERE 条件)是用来筛选行的。如果不加,则对所有行进行操作。

TRUNCATE TABLE 表名;  清除表中所有数据。

3.改:UPDATE 表名 SET 列名1=值1,… (WHERE 条件);

4.查:SELECT (DISTINCT) 要查询的内容 FROM 表名 附加条件;

(1)要查询的内容:

①列名/表达式

②列名/表达式 (as) 别名

③合计函数(count(…),sum(…),avg(…),max(…))

(2)附加条件:

①筛选:WHERE 条件

②排序:ORDER BY 列名/表达式 ASC/DESC

③归组:GROUP BY 列名/表达式(此时,要查询的内容必须为归组依据+合计函数)

归组筛选:HAVING 条件(合计函数)

5.条件:

(1)比较:>,<,=,>=,<=,<>

(2)区间:BETWEEN … AND …

(3)集合:IN(…)

(4)为空:IS NULL

(5)模糊查询:LIKE ‘…’(%:任意个字符,_:一个字符)

(6)条件逻辑:AND OR NOT

四、字符集与校对规则

1.字符集:一般用utf-8,MySQL中是”utf8″。然而Windows中很多地方默认字符集并不是utf-8,比如.txt默认GBK,.doc默认GB2312。总之,按需求设置即可。

2.校对规则:一般选择默认校对规则即可。比如utf-8对应”utf8_general_ci”。具体可以查阅文档。

五、数据类型

1.数值类型

(1)整型:BIT(位数),TINYINT(1字节),SMALLINT(2字节),MEDIUMINT(3字节),INT(4字节),BIGINT(8字节),无符号数加[UNSIGNED]或[ZEROFILL]

(2)小数:FLOAT(长度,位数),DOUBLE(长度,位数),DECIMAL(长度,位数)(高精度数)

(3)布尔型:BOOLEAN,BOOL:用0和1表示假和真

2.文本类型

(1)字符串:CHAR(长度)(固定长度,最大255),VARCHAR(长度)(可变长度,指定上限,最大65535)

(2)大文本:TINYTEXT(255字节),TEXT(64K),MEDIUMTEXT(16M),LONGTEXT(4G)

3.二进制类型:TINYBLOB(255字节),BLOB(64K),MEDIUMBLOB(16M),LONGBLOB(4G)

4.日期/时间类型:DATE(YYYY-MM-DD),DATETIME(YYYY-MM-DD hh:mm:ss),TIMESTAMP(时间戳,可自动保存时间)

六、表的约束

1.主键约束:PRIMARY KEY(主键),AUTO_INCREMENT(自增)

删除主键约束:ALTER TABLE 表名 DROP PRIMARY KEY;

若设置了自增,应先删除自增:ALTER TABLE 表名 CHANGE 主键名 主键名 数据类型;(就是重命名主键列)

2.唯一约束:UNIQUE

3.非空约束:NOT NULL

4.外键约束:CONSTRAINT 约束名(被约束者_FK) FOREIGN KEY(外键列名) REFERENCES 来源表(相关列)

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,075
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,551
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,399
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,176
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,811
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,893