1、SQL 基础知识- 数据库与 SQL目录 Whats 数据库 数据库结构 SQL 概要 创建数据库与表 删除和更新表一、Whats 数据库1.数据库(Database,DB):将大量数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合。如:大型-银行存储的信息,小型-电话簿。2.数据库管理系统(Batabase Management System,DBMS):用来管理数据库的计算机系统。3.关系型数据库(Relational Database,RDB):目前应用最广泛的数据库。4.结构化查询语言(Structured Query Language,SQL):专门用于操作 RDB。5.常
2、见的 5 种关系型数据库管理系统(Relational Database Management System,RDBMS):Oracle Database:甲骨文公司SQL Server:微软公司DB2:IBM 公司PostgreSQL:开源MySQL:开源二、数据库结构1.服务器:用于接收并处理其它程序发出的请求的程序(软件),或者是安装此类程序的设备(计算机)。2.客户端:向服务器发出请求的程序(软件),或者是安装此类程序的设备(计算机)。3.表(table):类似 Excel,由行和列组成的二维表。4.字段:表的列(垂直方向)。5.记录:表的行(水平方向)。【注意】关系数据库必须以行为单
3、位进行数据读写。6.单元格:行列交汇处。【注意】与 Excel 不同,一个单元格只能输入一个数据。三、SQL 概要1.SQL 语句:用关键字、表名和列名等组合而成的一条语句。2.3 种 SQL 语句种类:(1)DDL(Data Definition Language,数据定义语言):创建、删除或修改数据库以及数据库中的表等对象。CREATE:创建数据库和表等对象DROP:删除数据库和表等对象ALTER:修改数据库和表等对象(2)DML(Data Manipulation Language,数据操作语言):查询或修改表中的记录。SELECT:查询表中的数据INSERT:向表中插入数据UPDATE
4、:修改表中的数据DELETE:删除表中的数据(3)DCL(Data Control Language,数据控制语言):确认或取消对数据库中的数据变更的执行操作,以及对用户的操作数据库中的对象权限进行设定。COMMIT:确认对数据库中的数据进行的变更ROLLBACK:取消对数据库中的数据进行的变更GRANT:赋予用户的操作权限REVOKE:取消用户的操作权限【备注】DML 使用最频繁。3.SQL 语句书写规范:以分号(;)结尾;大小写不敏感,不区分关键字的大小写;【注意】插入到表中的数据是区分大小写的,如“HI”、“Hi”和“hi”都不同。该系列随笔将采用“关键字大写,表名和列名的首字母大写”的
5、格式。单词使用半角空格或换行符隔开4.常数的书写方式:字符串、日期:用单引号括起来(),如Hello,2016-09-24。数字:直接书写,不用加单引号,如:5。四、创建数据库与表1.数据库创建:- 语法:CREATE DATABASE CREATE DATABASE Shop - 创建名为 Shop 的数据库2.表的创建- 语法:- CREATE TABLE - (- ,- ,- .- ,- ,- .- )- 创建名为 Shohin 的表CREATE TABLE Shohin( shohin_id CHAR(4) NOT NULL, shohin_mei VARCHAR(100) NOT N
6、ULL, 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)中的括号表名该列可以存储的字符串的最大长度。
7、它是“定长字符串”,如 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 的列【注意】表定义变更后无法恢复。