Mysql 语法笔记

-- 创建数据库
CREATE DATABASE a;
-- 删除数据库
DROP DATABASE a;
-- 创建表 必须加括号 指定字段
use myschool;
CREATE TABLE a(name VARCHAR(20),age int(4));
-- 删除表
DROP TABLE a;
-- 查看数据库
SHOW DATABASES;
-- 查看表
SHOW TABLES;
-- 查看表的定义
DESCRIBE grade;
-- 使用dos命名 登录数据库
mysql -uroot -p
-- 选择数据库
USE 数据库名
-- 删除表中所有数据
DELETE from 表名
-- mysql 存储引擎
InnDB 适用范围
 不支持事务 也不支持外键 访问速度快
MyISAM 使用范围
支持事务 可以提交 回滚 崩溃恢复
-- 查看默认引擎
SHOW VARIABLES LIKE'storage_engine%';
-- 无符号 关键字 整型 数值 非负值
UNSIGNED
-- 不足位以0填充关键字
ZEROFILL
-- 数据库 语言
DML 数据操作语言
DDL 数据定义语言
DQL 数据查询语言
DCL 数据控制语言
-- MySQL 约束
非空约束 NOT NULL
唯一约束 UNIQUE KEY 字段
默认约束 DEFAULT
主键约束 PRIMARY KEY 字段
外键约束 FOREIGN KEY 字段
自动增长 auto_INCREMENT
-- 注释 
COMMENT='注释';
-- 指定字符集
create TABLE 表名()CHARSET='字符集名';
-- MyISAM 类型文件
frm 文件 表结构定义文件 存放表的元数据,
myi 索引文件 存放MyISAM 类型表的索引信息
myd 数据文件 存放表中数据
InnDB  类型表文件
frm 表结构定义文件
ibdata1 数据文件 保存 所有InnDB类型表的数据
-- 查看MySQL帮助
HELP 查询内容;
-- 查看数据类型
HELP INT;
-- 修改表名
ALTER TABLE 原表名 RENAME TO 新表明
-- 添加字段
ALTER TABLE 表名 ADD 字段名 数据类型 属性;
-- 修改字段 如果不需要修改数据类型 则和原数据类型一致 但不能为空
ALTER TABLE 表名 CHANGE 原字段名 新字段名 数据类型 属性;
-- 删除字段
ALTER TABLE 表名 DROP 字段名;
-- 添加主外键
ALTER TABLE 表名 CONSTRAINT 主键名 PRIMARY KEY 表名(主键字段);
-- 添加外键约束
ALTER TABLE 表名 ADD CONSTRAINT 外键名 FOREIGN key 外键字段 REFERENCES 关联表名(关联字段);
-- 插入数据 单行数据
INSERT INTO 表名(字段列表) VALUES(值列表);
-- 插入多行数据
INSERT INTO 表名 (字段列表) VALUES(值列表),(值列表),(值列表);
-- 查询结果集到新表
CREATE TABLE 新表(SELECT 字段,字段  FROM 原表)
-- 更新数据
UPDATE 表名 SET 字段=值,字段=值,字段=值 WHERE 条件
-- 按条件删除数据
DELETE FROM 表名 WHERE
-- 删除所有数据
DELETE FROM 表名;
-- WHERE 后面关键字作用
WHERE 指定查询条件
GROUP BY 子句表名查询出来的数据按指定字段进行分组
HAVING 子句用于筛选组条件
ORDER BY 指定显示顺序  ASC 顺序 DESC 降序
-- LIMIT 子句 第一个参数表示 第从n+1进行显示 第二个参数表示 查询条数
LIMIT 位置偏移量 行数
-- 重要函数
AVG() 平均值
COUNT() 返回查询数量
MAX() 最大值
MIN() 最小值
SUM() 总和
NOW() 返回当前时间
YEAR() 返回年份
-- 子查询
SELECT FROM 表名 WHERE 字段比较运算符(子查询语句);
-- 表连接
SELECT 字段 FROM 表名,表名 where 字段等值连接
-- 内连接 
SELECT 字段 FROM 表名 JOIN 表名 on 字段等值连接
-- IN和NOT IN 子查询
IN 用来代替子查询 比较运算符 返回多个单字段值
IN 前面 加 NOT 表示否定 返回不符合条件的查询结果
-- EXISTS 和 NOT EXISTS 子查询
EXISTS 用来检测数据库对象是否存在
EXISTS 后面可以跟子查询
语法 SELECT FROM 表名 WHERE EXISTS 子查询
EXISTS 关键子后面的参数是一个任意的子查询, 如果该子查询 有返回行 则 EXISTS 子查询的结果为 TRUE 此时在执行 外层查询语句
 如果子查询没有返回行, 则 EXISTS 子查询的结果为false 此时不会执行查询
-- NOT EXISTS 
允许 添加n NOT实现取反操作, NOT EXISTS 表示不存在

EXISTS 和 NOT EXISTS 的结果只取决于 是否由返回记录 不去会 这些记录 的内容 所有 EXISTS 或 NOT EXISTS 的子查询 后 SELECT 语句中的 字段列表通常是无关紧要的

-- 临时表
CREATE TEMPORARY table 

-- 模糊 查询
 
WHERE LIKE '%%'; 



在linux(centos)下 ,启动了mysql 并给用户文件读写的权利
grant file on *.* to root@localhost;

查看数据库into outfile 路径;show variables like '%secure%';

 set global validate_password.policy=0;

set global validate_password.length=1;

查看 mysql 初始的密码策略,
输入语句 “ SHOW VARIABLES LIKE 'validate_password%'; ” 进行查看,

MySQl修改自身的登录密码
SET PASSWORD = '123456'

首先查看 mysql 初始的密码的策略
输入语句SHOW VARIABLES LIKE 'validate.password%';进行查看;如下图:

修改密码语句ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';



限制约束  enum(‘男’)

FLUSH PRIVILEGES;刷新权限
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值