zoukankan      html  css  js  c++  java
  • SQL 基础知识梳理(一)- 数据库与 SQL

    目录

    一、What's 数据库

      1.数据库(Database,DB):将大量数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合。如:大型-银行存储的信息,小型-电话簿。

      2.数据库管理系统(Batabase Management System,DBMS):用来管理数据库的计算机系统。

      3.关系型数据库(Relational Database,RDB):目前应用最广泛的数据库。

      4.结构化查询语言(Structured Query Language,SQL):专门用于操作 RDB。

      5.常见的 5 种关系型数据库管理系统(Relational Database Management System,RDBMS):

        ①Oracle Database:甲骨文公司

        ②SQL Server:微软公司

        ③DB2:IBM 公司

        ④PostgreSQL:开源

        ⑤MySQL:开源

    二、数据库结构

      1.服务器:用于接收并处理其它程序发出的请求的程序(软件),或者是安装此类程序的设备(计算机)。

      2.客户端:向服务器发出请求的程序(软件),或者是安装此类程序的设备(计算机)。

      3.表(table):类似 Excel,由行和列组成的二维表。

      4.字段:表的列(垂直方向)。

      5.记录:表的行(水平方向)。【注意】关系数据库必须以行为单位进行数据读写。

      6.单元格:行列交汇处。【注意】与 Excel 不同,一个单元格只能输入一个数据。

    三、SQL 概要

      1.SQL 语句:用关键字、表名和列名等组合而成的一条语句。

      2.3 种 SQL 语句种类:

        (1)DDL(Data Definition Language,数据定义语言):创建、删除或修改数据库以及数据库中的表等对象。

          ①CREATE:创建数据库和表等对象

          ②DROP:删除数据库和表等对象

          ③ALTER:修改数据库和表等对象

        (2)DML(Data Manipulation Language,数据操作语言):查询或修改表中的记录。

          ①SELECT:查询表中的数据

          ②INSERT:向表中插入数据

          ③UPDATE:修改表中的数据

          ④DELETE:删除表中的数据

        (3)DCL(Data Control Language,数据控制语言):确认或取消对数据库中的数据变更的执行操作,以及对用户的操作数据库中的对象权限进行设定。

          ①COMMIT:确认对数据库中的数据进行的变更

          ②ROLLBACK:取消对数据库中的数据进行的变更

          ③GRANT:赋予用户的操作权限

          ④REVOKE:取消用户的操作权限

        【备注】DML 使用最频繁。

      3.SQL 语句书写规范:

        ①以分号(;)结尾;

        ②大小写不敏感,不区分关键字的大小写;【注意】插入到表中的数据是区分大小写的,如“HI”、“Hi”和“hi”都不同。

        ③该系列随笔将采用“关键字大写,表名和列名的首字母大写”的格式。

        ④单词使用半角空格或换行符隔开

      4.常数的书写方式:

        字符串、日期:用单引号括起来('),如'Hello','2016-09-24'。

        数字:直接书写,不用加单引号,如:5。

      

    四、创建数据库与表

      1.数据库创建:

    -- 语法:CREATE DATABASE <数据库名称>
    CREATE DATABASE Shop -- 创建名为 Shop 的数据库

      

      2.表的创建

    复制代码
    -- 语法:
    -- CREATE TABLE <表名>
    -- (
    --        <列名1> <数据类型> <约束>,
    --        <列名1> <数据类型> <约束>,
    --        ...
    --        <表约束1>,
    --        <表约束2>,
    --        ...
    -- )
    复制代码
    复制代码
    -- 创建名为 Shohin 的表
    CREATE TABLE Shohin
    (
        shohin_id     CHAR(4)      NOT NULL,
        shohin_mei    VARCHAR(100) NOT NULL,
        shohin_bunrui VARCHAR(32)  NOT NULL,
        hanbai_tanka  INTEGER ,
        shiire_tanka  INTEGER ,
        torokubi      DATE ,
        PRIMARY KEY (shohin_id)
     );
    复制代码

       

      3.命名规则:

        ①只能使用半角英文字母、数字、下划线(_)作为数据库、表和列的名称;

        ②规范要求命名以半角英文字符开头;

        ③名称不能重复。

      4.数据类型的指定:声明该列的数据类型,是一种约束。

      5.数据类型介绍:

        ①INTEGER:整型,意味不能存储小数;

        ②CHAR:字符串型,如 CHAR(10)和 CHAR(100)中的括号表名该列可以存储的字符串的最大长度。它是“定长字符串”,如 CHAR(8) 表示在列中插入 'abc' 时会自动保存成 'abc     '(后面5个半角空格)的形式;

        ③VARCHAR:字符串型,类似 CHAR,不同的是它是 “可变长字符串”,如 VARCHAR(8) 在插入 'abc',保存的就是字符串 'abc';

        ④DATE:日期类型;

        ... ...

      6.约束:

        ①非空约束:NULL 是空白(无记录)的意思的关键字,NOT NULL 表示必须输入的约束。

        ②主键约束:主键是可以确定一行数据的列,一般通过它取特定行的数据,它是唯一的,不允许重复。

        ... ...

    五、更新和删除表

      1.删除表

    -- 语法:DROP TABLE <表名>
    DROP TABLE Shohin; -- 删除名为 Shohin 的表

      【注意】被删的表,无法恢复。

      2.更新表

        (1)添加列

    -- 语法:ALTER TABLE <表名> ADD <列名> <类型>;
    ALTER TABLE Shohin ADD Shohin_mei_Kana VARCHAR(100); -- 在 Shohin 中添加名为 Shohin_mei_Kana 类型为 VARCHAR(100) 的列

        (2)删除列

    -- 语法:ALTER TABLE <表名> DROP COLUMN <列名>;
    ALTER TABLE Shohin DROP COLUMN Shohin_mei_Kana; -- 删除 Shohin 表中名为 Shohin_mei_Kana 的列

      【注意】表定义变更后无法恢复。

    传送门

      《SQL 基础知识梳理(一) - 数据库与 SQL

      《SQL 基础知识梳理(二) - 查询基础

      《SQL 基础知识梳理(三) - 聚合和排序

      《SQL 基础知识梳理(四) - 数据更新

    备注

      这里的语句采用 SQL Server 进行验证。

    声明 欢迎转载,但请保留文章原始出处:) 博客园:https://www.cnblogs.com/chenxiaomeng/ 如出现转载未声明 将追究法律责任~谢谢合作
  • 相关阅读:
    P2639 [USACO09OCT]Bessie的体重问题Bessie's We…
    P2871 [USACO07DEC]手链Charm Bracelet
    P1983 车站分级
    P1038 神经网络
    P1991 无线通讯网
    P1546 最短网络 Agri-Net
    P1197 [JSOI2008]星球大战
    P1004 方格取数
    P1111 修复公路
    pd_ds 之 hash
  • 原文地址:https://www.cnblogs.com/chenxiaomeng/p/14954905.html
Copyright © 2011-2022 走看看