• SQL语言


    SQL语言

    有国际标准,各个产品各有各的语法特点
    针对关系型数据库的一种操作语言

    关系型数据库的常见组件

    • 数据库:database
    • 表:table,行:row 列:column 表是核心内容
    • 索引:index
    • 视图:view
    • 用户:user
    • 权限:privilege
    • 存储过程:procedure
    • 存储函数:function
    • 触发器:trigger
    • 事件调度器:event scheduler,任务计划

    SQL语言的兴起与语法标准

    20世纪70年代源于IBM,用于DB2
    1981年
    1987年 ISO将SQL作为国际标准

    SQL语言规范

    • 在数据库系统中,SQL语句不区分大小写(建议用大写)
    • SQL语句可单行或多行书写,以“;”结尾
    • 关键词不能跨多行或简写
    • 用空格和缩进来提高语句的可读性
    • 子句通常位于独立行,便于编辑,提高可读性
    • 注释:
      • SQL标准:
      1. -- 注释内容 单行注释,注意有空格 SQL规范的注释
      2. /注释内容/ 多行注释
      3. MySQL注释: # MySQL自身规范

    数据库对象和命名

    • 数据库的组件(对象):
      • 数据库、表、索引、视图、用户、存储过程、函数、触发器、事件调度器等
    • 命名规则:
      • 必须以字母开头,可包括数字和三个特殊字符(# _ $)
      • 不要使用MySQL的保留字 有很多是有含义的关键字
      • 同一database(Schema)下的对象不能同名

    SQL语句分类

    定操查控

    • DDL: Data Defination Language 数据定义语言 创丢
      CREATE,DROP,ALTER
    • DML: Data Manipulation Language 数据操纵语言 增删改
      INSERT,DELETE,UPDATE
    • DQL:Data Query Language 数据查询语言 查询
      SELECT
    • DCL:Data Control Language 数据控制语言
      GRANT,REVOKE,COMMIT,ROLLBACK

    软件开发:CRUD 对应 增删改查

    SQL语句构成

    关健字Keyword组成子句clause,多条clause组成语句
    示例:

    SELECT * #SELECT子句
    FROM products #FROM子句
    WHERE price>400 #WHERE子句
    

    说明:一组SQL语句,由三个子句构成,SELECT,FROM和WHERE是关键字数据库操作
    获取SQL 命令使用帮助:

    mysql> HELP KEYWORD
    

    字符集和排序

    建议上来直接改UTF8
    从MySQL8.0开始默认字符集已经为utf8mb4
    创建库的时候直接指定字符集

    • 查看支持所有字符集:
    SHOW CHARACTER SET;
    
    • 查看支持所有排序规则:
    SHOW COLLATION;
    

    设置服务器默认的字符集

    vim /etc/my.cnf
    [mysqld]
    character-set-server=utf8mb4
    

    管理数据库

    创建数据库

    CREATE DATABASE|SCHEMA [IF NOT EXISTS] 'DB_NAME'
    CHARACTER SET 'character set name’
    COLLATE 'collate name';
    

    未完待续……

    * * * 胖并快乐着的死肥宅 * * *
  • 相关阅读:
    iOS高级教程:处理1000张图片的内存优化
    [转]改变UITextField placeHolder颜色、字体
    pushViewController自定义动画http://blog.csdn.net/ralbatr/article/details/22039233
    获取UIWebView的内容高度
    iOS: 计算 UIWebView 的内容高度
    iOS UIWebView 获取内容实际高度,关闭滚动效果
    UIImage 裁剪图片和等比列缩放图片
    Jqueryui+easyui+easywidgets做的后台界面
    多线程中使用HttpContext.Current为null的解决办法
    jquery图片上传前预览剪裁
  • 原文地址:https://www.cnblogs.com/bpzblog/p/13036749.html
Copyright © 2020-2023  润新知