zoukankan      html  css  js  c++  java
  • 数据库学习之二--SQL语句以及数据类型

    一、SQL语句种类:

      1. DDL(Data Definition Language,数据定义语言)用来创建或者删除存储数据用的数据库以及数据库中的表;包含以下几种指令:

        a. CREATE:CREATE: 创建数据库和表等对象
        b. DROP: 删除数据库和表等对象
        c. ALTER: 修改数据库和表等对象的结构

      2. DML(Data Manipulation Language,数据操纵语言) 用来查询或者变更表中的记录;包含以下几种指令:

        a. SELECT:查询表中的数据
        b. INSERT:向表中插入新数据
        c. UPDATE:更新表中的数据
        d. DELETE:删除表中的数据

      3. DCL(Data Control Language,数据控制语言) 用来确认或者取消对数据库中的数据进行的变更,和设定RDBMS 的用户的权限; 包含以下几种指令:

        a. COMMIT: 确认对数据库中的数据进行的变更
        b. ROLLBACK: 取消对数据库中的数据进行的变更
        c. GRANT: 赋予用户操作权限
        d. REVOKE: 取消用户的操作权限

    二、 书写法则

      1. SQL 语句要以分号(;)结尾;

      2. SQL 语句不区分大小写;

      3. 常数的书写方式是固定的,使用单引号(')将字符串括起来,用来标识这是一个字符串,例如'abc','2010-01-26';

      4. 单词之间需要用半角空格或者换行来分隔;

    三、命名规则:

      1. 数据库名称、表名和列名可以使用以下三种字符:中文字符、英文字母、 数字、下划线(_);

      2. 名称必须以中文字符、英文字母作为开头

      3. 同一个数据库,表名不能重复;同一张表,字段不能重复;

      4. 数据,也就是表的列必须指定数据类型;

    四、存储数据类型

      1. 整形:

        a. INT或INTEGER: (数字型)4 字节;

        b. TINYINT:1字节;

        c. SMALLINT: 2字节;

        d. MEDIUMINT:3字节;

        e. BIGINT:8字节;

      2. 小数:

        a. FLOAT: 单精, 4字节;

        b. DOUBLE: 双精度, 8字节;

        c. DECIMAL: DECIMAL(M,D) ,如果M>D,为M+2否则为D+2; 

      3. 字符型

        a. CHAR: 存储字符串, 在括号中指定字符串的长度,例如:CHAR(256);

        注:i. 字符串以定长字符串的形式存储;如果字符串的长度<长度,字符串仍然以定长存储,用半角空格补足;

          ii. 字符串超出最大长度的部分无法输入到该列中;

          iii. 区分大小写

        b. VARCHAR:存储字符串,在括号中指定字符串的长度,例如:VARCHAR(256);

        注:i. 以可变长字符串的形式来保存字符串;

          ii. 字符数未达到最大长度,保存字符串本身;如向VARCHAR(8) 类型的列中输入字符串'abc'的时候,保存的就是字符串'abc';

          ii. 区分大小写;

        c. TINYBLOB: 不超过 255个字符的二进制字符串;

        c1. MEDIUMBLOB: 二进制形式的中等长度文本数据

        c2. BLOB: 二进制形式的长文本数据

        c3. LONGBLOB: 二进制形式的极大文本数据

        d1. TINYTEXT: 短文本字符串

        d2. MEDIUMTEXT: 中等长度文本数据

        d3. TEXT: 长文本数据

        d4. LONGTEXT: 极大文本数据

      注:UTF-8:一个汉字=3个字节;GBK:一个汉字=2个字节

      4. 日期类型

        a. DATE: 3个字节,格式:YYYY-MM-DD;

        b. TIME: 3个字节,格式:HH:MM:SS;

        c. YEAR:  1个字节,格式:YYYY

        e. DATETIME: 8个字节,格式:YYYY-MM-DD HH:MM:SS

        f. TIMESTAMP: 4个字节,格式:YYYYMMDD HHMMSS

      总结字符串的使用: 

        i. 经常变化的字段用 varchar;

        ii. 知道固定长度的用 char

        iii. 尽量用 varchar

        iv. 超过 255 字符的只能用 varchar 或者 text

        iiv. 能用 varchar 的地方不用 text

    五、约束

      1. PRIMARY KEY:主键,唯一标识数据库表中的每条记录;

        a.主键必须包含唯一的值;

        b. 不能包含 NULL 值;

        c. 每个表都应该有一个主键,并且每个表只能有一个主键。

      2. FOREIGN KEY:外键, 一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY;

      3. UNIQUE: 唯一标识数据库表中的每条记录;

      4. NOT NULL:强制列不接受 NULL 值。尽量使用Not Null; 如:product_id CHAR(4) NOT NULL;

      5. CHECK: 限制列中的值的范围;

      6. DEFAULT: 向列中插入默认值;

      

      

      

      

  • 相关阅读:
    移动端 推送的那些东西
    git 常用命令
    顶部提示 先下移出来 再上移出去
    ViewPager 高度自适应
    进制转换
    Android 适配
    适配三星Galaxy S8及S8+ 屏幕比例为 18.5:9
    dpi dp px 换算关系
    资源前缀及代码分析总结
    判断是否快速点击或者滑动
  • 原文地址:https://www.cnblogs.com/anlia/p/11732068.html
Copyright © 2011-2022 走看看