MySQL学习笔记(一)

1.MySQL
启动服务:net start mysql
停止服务:net stop mysql
登录:mysql -uroot -p -P3306 -h127.0.0.1
退出:
mysql > exit;
mysql > quit;
mysql > \q;
2.修改MySQL提示符
连接客户端时通过参数指定:
shell>mysql -uroot -pxxxx --prompt 提示符
连接上服务端后,通过prompt命令修改:
mysql>prompt 提示符
3.MySQL提示符

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

4.MySQL常用命令
显示当前服务器版本
SELECT VERSION();
显示当前日期时间
SELECT NOW();
显示当前用户
SELECT USER();
5.MySQL语句的规范
(1)关键字与函数名称全部大写
(2)数据库名称、表名称、字段名称全部小写
(3)SQL语句必须以分号结尾
6.创建数据库
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [DEFAULT] CHARACTER SET [=] charset_name;
7.查看当前服务器下的数据库列表
SHOW {DATABASES | SCHEMAS} [LIKE 'pattern' | WHERE expr];
8.修改数据库默认编码
ALTER {DATABASE | SCHEMA} [db_name] [DEFAULT] CHARACTER SET [=] charset_name;
9.删除数据库
DROP {DATABASE | SCHEMA} [IF EXISTS] db_name;
10.数据类型
数据类型是指列、存储过程参数、表达式和局部变量的数据特征,他决定了数据的存储格式,代表了不同的信息类型。
11.查询当前数据库
SELECT DATABASE();
12.创建数据表

CREATE TABLE [IF NOT EXISTS] table_name(
    column_name data_type,
    ...
)

13.查看数据表列表

SHOW TABLES [FROM db_name]
[LIKE 'pattern' | WHERE expr]

14.查看数据表结构
SHOW COLUMNS FROM tb_name
15.插入记录
INSERT [INTO] tb_name[(col_name,...)] VALUES(val,...)
16.记录查找
SELECT expr,... FROM tb_name
17.空值与非空
NULL,字段值可以为空
NOT NULL,字段值禁止为空
18.AUTO_INCREMENT
自动编号,且必须与主键组合使用
默认情况下,起始值为1,每次的增量为1
19.UNIQUE
唯一约束可以保证记录的唯一性
唯一约束的字段可以为空值(NULL)
每张数据表可以存在多个唯一约束
20.DEFAULT
默认值
当插入记录时,如果没有明确为字段赋值,则自动赋予默认值。
21.约束
(1)约束保证数据的完整性和一致性
(2)约束分为表级约束和列级约束
(3)约束类型包括
NOT NULL(非空约束) PRIMARY KEY(主键约束) UNNIQUE KEY(唯一约束) DEFAULT(默认约束) FOREIGN KEY(外键约束)
22.FOREIGN KEY
保持数据一致性,完整性。
实现一对多或一对一关系。
23.外键约束的要求
(1)父表和子表必须使用相同的存储引擎,而且禁止使用临时表。
(2)数据表的存储引擎只能为InnoDB。
(3)外键列和参照列必须具有相似的数据类型。其中数字的长度或是否有符号位必须相同;而字符的长度则可以不同。
(4)外键列和参照列必须创建索引。如果外键列不存在索引的话,MySQL将自动创建索引。
24.编辑数据表的默认存储引擎
MySQL配置文件
default-storage-engine=INNODB
25.查看表的配置信息
SHOW CREATE TABLE tb_name;
26.外键约束的参照操作
(1)CASCADE:从父表删除或更新且自动删除或更新子表中匹配的行
(2)SET NULL:从父表删除或更新行,并设置子表中的外键列为NULL。如果使用该选项,必须保证子表列没有指定NOT NULL
(3)RESTRICT:拒绝对父表的删除或更新操作
(4)NO ACTION:标准SQL的关键字,在MySQL中与RESTRICT相同
27.表级约束和列级约束
对一个数据列建立的约束,称为列级约束
对多个数据列建立的约束,称为表级约束
列级约束既可以在列定义是声明,也可以在列定义之后声明表级约束只能在列定义后声明
28.修改数据表
(1)添加单列
ALTER TABLE tb_name ADD [COLUMN] col_name column_definition [FIRST | AFTER col_name]
(2)添加多列
ALTER TABLE tb_name ADD [COLUMN](col_name col_definition,...)
(3)删除列
ALTER TABLE tb_name DROP [COLUMN] col_name
(4)添加主键约束
ALTER TABLE tb_name ADD [CONSTRAINT [symbol]] PRIMARY KEY [index_type](index_col_name,...)
(5)添加唯一约束
ALTER TABLE tb_name ADD [CONSTRAINT [symbol]] UNIQUE [INDEX | KEY] [index_name] [index_type] (index_col_name,...)
(6)添加外键约束
ALTER TABLE tb_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name](index_col_name,...) reference_definition
(7)添加/删除默认约束
ALTER TABLE tb_name ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}
(8)删除主键约束
ALTER TABLE tb_name DROP PRIMARY KEY
(9)删除唯一约束
ALTER TABLE tb_name DROP {INDEX | KEY} index_name
(10)删除外键约束
ALTER TABLE tb_name DROP FOREIGN KEY fk_symbol
(11)修改列定义
ALTER TABLE tb_name MODIFY [COLUMN] col_name col_definition [FIRST | AFTER col_name]
(12)修改列名称
ALTER TABLE tb_name CHANGE [COLUMN] old_col_name new_col_name column_definition [FIRST | AFTER col_name]
29.数据表更名
方法一:ALTER TABLE tb_name RENAME [TO | AS] new_tb_name
方法二:RENAME TABLE tb_name TO new_tb_name[,tb_name2 TO new_tb_name2]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值