-- Tips:数据库与sql
-- 一、What's 数据库
-- 1.数据库(Database,DB):将大量数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合。
-- 如:大型-银行存储的信息,小型-电话簿。
-- 2.数据库管理系统(Database 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 Zckops --创建名为shop1的数据库名。
drop database Zckops --删除名为shop1的数据库名
--------------------------------------
-- 2.表的创建
-- 语法:
-- CREATE TABLE <表名>
-- (
-- <列名1> <数据类型> <约束>,
-- <列名1> <数据类型> <约束>,
-- ...
-- <表约束1>,
-- <表约束2>,
-- ...
-- )
------------------
-- 创建名为 Conbio 的表
CREATE TABLE Conbio
(
Conbio_id CHAR(4) NOT NULL, --id序列号 -非空约束
Conbio_name VARCHAR(100) NOT NULL, --物品名 -非空约束
Conbio_Varieties VARCHAR(32) NOT NULL, --品种 -非空约束
Conbio_price1 INTEGER , --价格1
Conbio_price2 INTEGER , --价格2
Conbio_date DATE , --日期
PRIMARY KEY (Conbio_id) --主键约束
);
------------------
insert into Conbio values(0001,'T恤','衣服',1000,500,'2009-09-20',null) --插新行
insert into Conbio values(0002,'打孔器','办公用品',500,320,'2009-09-11',null)
insert into Conbio values(0003,'运动T恤','衣服',4000,2800,null,null)
insert into Conbio values(0004,'菜刀','厨房用具',3000,2800,'2009-09-20',null)
insert into Conbio values(0005,'高压锅','厨房用具',6800,5000,'2009-01-15',null)
insert into Conbio values(0006,'叉子','厨房用具',500,null,'2009-09-20',null)
insert into Conbio values(0007,'擦菜板','厨房用具',880,790,'2008-04-28',null)
insert into Conbio values(0008,'圆珠笔','办公用品',100,null,'2009-11-11',null)
insert into Conbio ( Conbio_id,Conbio_name,Conbio_Varieties) values (0000,'举例打孔机','举例办公用品') --指定插入语句
------------------
drop table Conbio --删除名为Conbio的表.
--------------------------------------
--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 <表名>
------------------
create Table ConbioText001 --创建测试表
(
Conbio_id CHAR(4) NOT NULL, --id序列号 -非空约束
PRIMARY KEY (Conbio_id) --主键约束
);
------------------
DROP TABLE ConbioText001; -- 删除名为 ConbioText001 的表
-- 【注意】被删的表,无法恢复。
--------------------------------------
-- 2.更新表
-- (1)添加列
---- 语法:ALTER TABLE <表名> ADD <列名> <类型>;
select * from conbio; --查询选择了从所有里找名为conbio的表
alter table Conbio add conbio_name_test001 varchar(100); -- 在conbio表中添加一个名为conbio_name_test 类型为 varchar(100)的列.
--------------------------------------
-- (2)删除列
---- 语法:ALTER TABLE <表名> DROP COLUMN <列名>;
ALTER TABLE conbio DROP COLUMN conbio_name_test001; -- 删除 Shohin 表中名为 Shohin_mei_Kana 的列
-- 【注意】表定义变更后无法恢复。
--------------------------------------
--欢迎关注个人公众号:Zkcops
-- 共同进步
由:zkcops 撰写(希望能对你有所帮助,转载注明出处!)
--------------------------------------