MySQL结课体会_MySQL课堂总结随笔

第一章:数据类型

数值类型(整数类型、浮点数类型)

日期时间类型

字符串和二进制类型

其他数据类型

*数值类型包括整数型和浮点型。

整数型数据:只能存储整数!最常用的整型数据类型是INT型。

浮点型数据:可以存储整数和小数,但都带有小数点。最常用的浮点型数据类型是FLOAT型。

*日期时间类型:

日期型:用于保存日期。DATE

时间性:用于保存时间。TIME

日期时间型:用于保存日期与时间。DATETIME

注意:

日期与时间之间,需要使用空格分开。

日期型、时间型、日期时间型的数据,需要使用单引号括起来。

*字符串型:

CHAR类型:固定长度的字符串 当实际字符长度小于类型其长度时,后面用空格补全。

VARCHAR类型:可变长度的字符串 保存的是实际字符串的长度。

CHAR与VARCHAR长度范围都是0~255之间的大小。

注意:

当字符串长度超过类型长度时,超出的字符将被删除。(没有了)

第二章、相关操作

mysql程序常用命令

选定默认数据库:use dbname;

显示所有数据库:show databases;

显示默认数据库中所有表:show tables;

放弃正在输入的命令:\c

显示命令清单:\h

退出mysql程序:\q

查看MySQL服务器状态信息:\s

处理SQL文件

mysql命令

处理存放在文件里的SQL命令

格式:mysql [option] dbname < file.sql

mysql –u root –p --default-character-set=latin1 dbname < backup.sql

注:latin1是MySQL4.0的默认字符集或者utf-8是MySQL5.0的默认字符集,如果不知道使用什么字符集的时候,可以选用这两个其中一个

mysqladmin命令

完成许多系统管理任务,如创建或删除一个数据库、修改密码等

格式:mysqladmin [option] admincommand

创建数据库:mysqladmin –u root –p create newdb

删除数据库:mysqladmin –u root –p drop newdb

更改密码:mysqladmin –u root –p password “newpasswd”

mysqldump命令

用于为数据库创建备份

格式:mysqldump [option] dbname > bak.sql

mysqldump –u root –p tmpdb > backuptmp.sql

备份出来的是一个文本文件,默认为utf-8字符集,如果想使用另外一种字符集,必须使用 --default-character-set=gbk选项来设置

附加工具

MySQL CC http://www.mysql.com/products/mysqlcc/index.html对于MySQL,它是一个极好的前端查询和数据库管理工具。现有Windows,UNIX和Linux版本可用,并且Mac OS X 的版本现在也有

DBTOOL专业管理器,来自http://www.dbtools.com.br,是一个用于管理MySQL数据库、表和索引的图形客户,其输入来自其他RDBMS的数据,该管理器提供一个用于查询和报告设计的接口。

注意:

不要直接删除磁盘中的数据库文件!否则会导致服务器出错!

此外,数据库文件不能直接双击打开,也不能直接访问。

该如何访问数据库中的数据?

使用数据库服务器(DBMS)进行访问。

第三章、数据库操作

查看当前服务器中的所有数据库(名称):show databases;

查看数据库的信息(创建语句):show create database 数据库名称;

修改数据库的基本语法格式(修改默认字符集,即编码):

ALTER database 数据库名称

default character set 编码方式

collate 编码方式_bin;

查看当前支持的字符集:show character set ;

删除数据库(包括该数据库中所有信息):drop database 数据库名称;

小结

查看:show

show databases 查看当前服务器中所有数据库的名称

show create database 查看指定数据库的创建语句

show character set 查看所有字符集

show collation 查看所有校对规则

创建:create

修改:alter

删除:drop

数据库:database

第四章、数据表操作

查看与删除数据表的操作

查看数据表的建立语句:SHOW CREATE table 表名;

查看当前数据库中所有表:SHOW tables;

查看表中的字段信息:DESCRIBE 表名;可简写为:DESC 表名;

删除数据表:DROP table 表名;

注意:要创建表格,必须先选定数据库

修改数据表

修改数据表的语法,与修改数据库的语法类似:

ALTER database mydb

default character set gbk

collate gbk_bin;

ALTER table 表名

具体要修改的选项;

注意:修改数据表是指,修改表的结构,而不是修改表中的数据。

1)修改表名称:

ALTER table 表名

rename [TO] 新表名;

注:[TO]为可选项,即可加可不加

2)修改字段名:

ALTER table 表名

change 旧字段名 新字段名 新(原)数据类型;

3)修改字段的数据类型:

ALTER table 表名

modify 字段名 新数据类型;

4)添加字段:

ALTER table 表名

add 新字段名 数据类型;

5)删除字段:

ALTER table 表名

drop 字段名 ;

6)修改字段的排列位置:

ALTER table 表名

modify 字段名1 数据类型 FIRST | AFTER 字段名2 ;

小结

注意:修改数据表是指,修改表的结构,而不是修改表中的数据

1)修改表名 rename

2)修改字段名(也可同时修改字段的数据类型) change

3)修改字段的数据类型 modify

4)添加字段 add

5)删除字段 drop

6)修改字段的排列位置 modify

第五章、约束

约束——用于实现数据完整性,数据完整性理解为:数据的有效性(正确性)。

数据库完整性概述:

(1)实体完整性(行与行) 主键约束、外键约束

(2)域(字段)完整性(各个字段数值) 非空约束、默认值约束、检查

(3)参照完整性(表与表) 外键约束

(4)用户(自定义)完整性

约束的类型:

(1)主键约束

(2)外键约束

(3)非空约束

(4)唯一约束

(5)默认值约束

(6)检查约束

1)主键约束(PRIMARY KEY)

用来唯一标识表中的一个列,一个表中主键约束最多只能有一个,不同的行上,主键值不能相等。

在创建表时设置联合主键约束。联合主键,即多个列联合作为主键。这是,主键列的值不能同时都相等。

*修改表时添加主键约束

语法格式:

ALTER TABLE 表名

ADD CONSTRAINT 约束名 PRIMARY KEY(列名);

表名:要添加约束的表

约束名:由用户指定,用于标识约束

列名:要添加主键约束的列

*修改表时删除主键约束

语法格式:

ALTER TABLE 表名

DROP PRIMARY KEY;

注意:由于主键约束在一个表中只能有一个,因此不需要指定主键名就可以删除。

2)外键约束( FOREIGN KEY )

外键是指引用另一个表中的一列或多列,被引用的列应该具有主键约束或唯一约束。

外键用于建立和加强两个表数据之间的连接。

外键用于建立和加强两个表数据之间的连接。

外键用于建立多个表之间的关系。

语法格式:

添加外键

ALTER TABLE 表名

ADD CONSTRAINT 约束名

FOREIGN KEY (外键字段名) REFERENCES 外键表名(列名);

删除外键

ALTER TABLE 表名

DROP FOREIGN KEY 外键名;

EG:ALTER TABLE student

ADD CONSTRAINT FK_ID

FOREIGEN KEY (gid) REFERENCES grade(id);

含义:在student表的gid列上建立一个外键约束,该约束是参照grade表的id字段。

对表添加数据时有什么影响?

对于被参照的表grade:添加数据时无任何影响。

对于外键表student上的外键列gid:该列上的数据只能选择被参照表grade上被参照列id中的数据。

简单的说:student表上gid列中的数据,只能是grade表上id列中已有的数据。即,student表的gid外键依赖于grade表的id。

3)非空约束(NOT NULL)

用来限定数据表中的列必须输入值。

*修改表时添加非空约束

语法格式:

ALTER TABLE 表名

MODIFY 列名 该列数据类型 NOT NULL ;

4)唯一约束(UNIQUE)

也是用来唯一标识表中列的,不同的行上,唯一键的值也不能相等与主键约束不同的是,在一张数据表中可以有多个唯一约束。

*修改表时添加唯一约束

语法格式:

ALTER TABLE 表名

ADD CONSTRAINT 约束名 UNIQUE(列名);

*删除唯一约束

语法格式:

DROP INDEX 约束名 ON 表名

5)默认值约束(DEFAULT)

用来当不给表的列输入值时,自动为该列指定一个值。

*修改表时添加默认值约束

语法格式:

ALTER TABLE 表名

ALTER 列名 SET DEFAULT 默认值 ;

*删除默认值约束

语法格式:

ALTER TABLE 表名

ALTER 列名 DROP DEFAULT ;

小结

表创建后,再添加约束

主键约束

ALTER TABLE 表名

ADD CONSTRAINT 约束名 PRIMARY KEY(列名);

唯一约束

ALTER TABLE 表名

ADD CONSTRAINT 约束名 UNIQUE(列名);

非空约束

ALTER TABLE 表名

MODIFY 列名 该列数据类型 NOT NULL ;

默认约束

ALTER TABLE 表名

ALTER 列名 SET DEFAULT 默认值 ;

外键约束

ALTER TABLE 表名

ADD CONSTRAINT 约束名

FOREIGN KEY (外键字段名) REFERENCES 外键表名(列名);

注意:约束名称可以使用SHOW CREATE TABLE 表名;来查询。

删除约束

主键约束

ALTER TABLE 表名

DROP PRIMARY KEY;

唯一约束

DROP INDEX 约束名 ON 表名

非空约束

ALTER TABLE 表名

MODIFY 列名 该列数据类型 ;

默认约束

ALTER TABLE 表名

ALTER 列名 DROP DEFAULT ;

外键约束

ALTER TABLE 表名

DROP FOREIGN KEY 外键名;

第六章、索引

索引主要内容

1)索引的概念

数据库的索引好比新华字典的音序表,它是对数据表中一列或多列的值进行排序后的一种结构,其作用就是提高表中数据的查询速度。

2)索引的分类

(1)普通索引:基本索引类型

(2)唯一性索引:该索引所在字段的值必须是唯一的

(3)全文索引:定义在字符串类型上的索引

(6)空间索引:只能创建在空间数据类型上

(4)单列索引:在单个字段上创建的索引

(5)多列索引:在多个字段上创建的索引

3)创建索引

*创建表时创建索引

基本语法格式:

CREATE TABLE 表名称

(

字段名 数据类型 [完整性约束条件],

字段名 数据类型 [完整性约束条件],

…………

字段名 数据类型 ,

[ UNIQUE | FULLTEXT | SPATIAL ] INDEX | KEY

[索引名] (字段名 [(长度)] [ASC | DESC] )

);

UNIQUE :唯一索引

FULLTEXT:全文索引

SPATIAL :空间索引

INDEX | KEY :表示索引,二选一即可

字段名:要添加索引的字段

长度:索引的长度

ASC | DESC :ASC为升序排序,DESC为降序排序,默认是ASC升序排序

*使用CREATE INDEX语句在已有表上创建索引

基本语法格式:

CREATE [ UNIQUE | FULLTEXT | SPATIAL ] INDEX 索引名

ON 表名 (字段名 [(长度)] [ASC | DESC] ) ] ;

*使用ALTER TABLE语句在已有表上创建索引

基本语法格式:

ALTER T

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值