mysql8 语法

sql 语言分类

常用的SQL的语言类型有:DCL(数据库管理) DDL(数据定义) DML(数据操作) TCL(事务语句)

DCL (Date Control Language)

1. 建立数据库账号:create user (help create user 查看使用方法)
  1. 建立程序使用的数据库账号:
    查看插件show plugins;
CREATE USER mc_test@'192.168.1.%' IDENTIFIED BY '123456' WITH MAX_USER_CONNECTIONS 1;
CREATE USER test_uesr@'192.168.%.%' IDENTIFIED WITH 'mysql_native_password' BY '123456' WITH MAX_USER_CONNECTIONS 100;
2. 对用户授权:grant
  • MySQL的常用权限

    权限名称 说明
    Insert 向表中插入数据的权限
    Delete 删除表中数据的权限
    Update 修改表中数据的权限
    Select 查询表中数据的权限
    Execute 执行存储过程的权限
  • 查看权限列表

    SHOW PRIVILEGES;
    show privileges\G
    
  • 授权例子

    • 给用户test_user授予mysql.user表上的user和host列的查询权限
      GRANT select(user, host) on mysql.user to test_user@'192.168.1.%';
      
    • 给用户test_user授予mysql.user表所有列的查询权限
      GRANT select on mysql.user to test_user@'192.168.1.%';
      
    • 给用户test_user授予mysql库下所有表所有列的查询和插入权限
      GRANT select,insert on mysql.* to test_user@'192.168.1.%';
      
    • 给用户授予对imc_db下的所有表的 所有权限
       grant all privileges on imc_db.* to imc_user@'192.168.1.%';
      
  • GRANT命令的注意事项

    • 使用grant授权的数据库账号必须存在
    • 用户使用grant命令授权必需具有grant option 的权限
    • 获取命令帮助 \h grant
3. 收回用户权限:revoke
  • 授予test_user 对mysql数据库下所有表的 增删改查 权限
GRANT select,insert,delete,update ON mysql.* TO test_uesr@'192.168.1.%';
  • 收回test_user 对mysql数据库下所有表的 增删改 权限
REVOKE insert,delete,update ON mysql.* FROM test_uesr@'192.168.1.%';

DDL (Data Definition Language) 创建数据库对象

  • 建立/修改/删除数据库:create/alter/drop database
  • 建立/修改/删除数据表:create/alter/drop table
  • 建立/删除索引:create/drop index
  • 清空表:truncate table
  • 重命名:rename table
  • 建立/修改/删除视图:create/alter/drop view
1. 创建数据库
CREATE DATABASE dba;
2. 创建表
 SHOW CREATE TABLE imc_class;
CREATE TABLE `imc_class` (
  `class_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT COMMENT '课程分类ID',
  `class_name` varchar(10) NOT NULL DEFAULT '' COMMENT '分类名称',
  `add_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '填加时间',
  PRIMARY KEY (`class_id`)
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8 COMMENT='课程分类';
3. 创建索引
CREATE INDEX index_name on table1_name(index_col_name,)
DROP INDEX index_name ON tal_name
CREATE UNIQUE INDEX uqx_classname ON imc_class(class_name);
4. 清空表
TRUNCATE TABLE imc_db;
5. 重命名
RENAME TABLE imc_db TO bak_imc_db;

DML(Date Manipulation Language)

  • 新增表中的数据: insert into
  • 删除表中的数据: delete
  • 修改表中的数据: update
  • 查询表中的数据: select
1. INSERT 插入数据语句 https://www.runoob.com/sql/sql-insert.html
USE dba;

INSERT INTO 
imc_class(class_name) 
VALUES("Python"), ("GO");
2. SELECT 编写查询语句的思路
  • 首先要确定要获取的数据存在哪些表中: 确定FROM子句
  • 其次要确定要获取表中哪些列:确定select子句
  • 确定是否要对表中数据进行过滤:确定where子句
2.1 MySQL的比较运算符
比较运算符 说明
= > < >= <= <> != <> 和 != 都表示不等于
BETWEEN min AND max 列的值大于等于最小值, 小于等于最大值
IS NULL , IS NOT NULL 判断列的值是否为NULL
LIKE , NOT LIKE %代表任何数量的字符串, _代表任何一个字符
IN , NOT IN 判断列的值是否在指定的范围内
  • 学习人数大于1000人的课程都有哪些?

    SELECT title, study_cnt
    FROM imc_course
    WHERE study_cnt>1000;
    
  • 学习人数大于等于1000人并且小于等于2000人的课程都有哪些?

    SELECT title, study_cnt
    FROM imc_course
    WHERE study_cnt BETWEEN 1000 AND 2000;
    
  • 学习人数不为空(NULL)的课程都有哪些?

    SELECT title, study_cnt
    FROM imc_course
    WHERE study_cnt IS NOT NULL;
    
  • 查询出课程表中课题含有 MYSQL 的课程标题

    SELECT title
    FROM imc_course
    WHERE title LIKE "%MYSQL%"; 
    
  • 课程id为 1,3,5,7,9 的课程

    SELECT course_id, title
    FROM imc_course
    WHERE course_id IN (1, 3, 5, 7, 9);
    
2.2 MySQL的逻辑运算符

如何合并where子句中的多个过滤条件?

逻辑运算符 说明
AND, && AND 两边的表达式都为真时,返回结果才为真
OR, || OR 两边的表达式有一条为真时,返回结果就为真
XOR XOR 两边的表达式一真一假时返回真,两真两假返回假

注意:

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
单片微型计算机(MCU)经过多年的发展,在性能上有很大的进步,在型号上发展到上千种类,已经广泛应用于人类社会生活的各个领域。单片机课程已经成为高校计算机、自动化、测控以及电子信息工程等专业的重要课程。该课程是一门理论性和实践性都很强的课程,在实际教学中,应将理论教学和实验教学紧密结合。学生在掌握理论知识之余,必须通过编写程序、设计硬件电路、仿真、调试这一系列的实验过程,才能更好地掌握单片机的结构原理和应用技能。随着单片机及其接口技术的飞速发展,目前市场上供应的编程仿真实验资源并不能完全满足高校单片机课程教与学的需求,构建低成本、技术先进、源码公开的单片机编程仿真实验系统,对我国单片机课程的教学和单片机领域人才的培养具有重要的现实意义。 本论文结合目前教学中对单片机编程仿真实验系统的实际需求,采用模块化结构设计思想,精心设计和开发了单片机编程仿真实验系统。该单片机编程仿真实验系统由PC机端单片机编程控制软件和单片机编程仿真实验板两部分组成。PC机端的单片机编程控制软件可以自动检测到连接到单片机编程仿真实验板上的单片机,控制单片机编程器擦除、写入、读出、校验目标单片机ROM中的程序,以十六进制文件(.HEX文件)格式显示在控制界面内;单片机仿真实验系统能够把写入单片机的程序实时地运行,并呈现实际运行效果。单片机编程控制软件和单片机仿真实验板组成一个完整的单片机编程仿真实验系统。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值