【SQL.基础构建-第一节(1/4)】
-- 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
--2018/04/16
由:zkcops 撰写(希望能对你有所帮助,转载注明出处!)
--------------------------------------
【SQL.基础构建-第一节(1/4)】的更多相关文章
- 【SQL.基础构建-第二节(2/4)】
-- Tips:查询基础 --一.SELECT 语句基础-- 1.查询指定列:SELECT 关键字--语法:--SELECT <列名>, ... -- 希望查询列的名称- ...
- 【SQL.基础构建-第四节(4/4)】
-- Tips:数据更新 --一.插入数据 --1.INSERT 语句的基本语法 --语法:--INSERT INTO <表名>(列1, 列2, ...) VALUES (值1, ...
- 【SQL.基础构建-第三节(3/4)】
-- Tips:聚合和排序 -- 一.对表进行聚合查询 -- 1.聚合函数 -- (1)5 个常用函数: -- ①COUNT:计算表中的记录(行)数. -- ②SUM:计算表中数值列的 ...
- ASP.NET MVC深入浅出(被替换) 第一节: 结合EF的本地缓存属性来介绍【EF增删改操作】的几种形式 第三节: EF调用普通SQL语句的两类封装(ExecuteSqlCommand和SqlQuery ) 第四节: EF调用存储过程的通用写法和DBFirst模式子类调用的特有写法 第六节: EF高级属性(二) 之延迟加载、立即加载、显示加载(含导航属性) 第十节: EF的三种追踪
ASP.NET MVC深入浅出(被替换) 一. 谈情怀-ASP.NET体系 从事.Net开发以来,最先接触的Web开发框架是Asp.Net WebForm,该框架高度封装,为了隐藏Http的无状态 ...
- 第一章 SQL基础
第一部分:SQL基础1. 为什么学习SQL自人类社会形成之日起,社会的运转就在不断地产生和使用各种信息(文献.档案.资料.数据等):在如今所谓的信息时代,由于计算机和互联网的作用,信息的产生和使用达到 ...
- Java基础第一节.Java简介
第一节 Java简介 Java是一个由Sun公司开发而成的新一代的编程语言. Java语言是对软件开发有深远影响.应用前景广泛.具有丰富的类库.继承了C++的传统(摈弃了某些不足)广泛使用的网络编程语 ...
- VUE2.0实现购物车和地址选配功能学习第一节(来源--慕课网河畔一角)
第一节 vue知识 vue-resource:和后台交互的一个插件,实现get.post和jsonp等功能.(替代jQuery) vue特点: 1.易用:通过创建vue实例,{{}}绑定数据十分方便 ...
- 第一节:ASP.NET开发环境配置
第一节:ASP.NET开发环境配置 什么是ASP.NET,学这个可以做什么,学习这些有什么内容? ASP.NET是微软公司推出的WEB开发技术. 2002年,推出第一个版本,先后推出ASP.NET2. ...
- Ionic 入门与实战之第二章第一节:Ionic 环境搭建之开发环境配置
原文发表于我的技术博客 本文是「Ionic 入门与实战」系列连载的第二章第一节,主要对 Ionic 的开发环境配置做了简要的介绍,本文介绍的开发环境为 Mac 系统,Windows 系统基本类似,少许 ...
随机推荐
- 最小生成数(并查集)Kruskal算法
并查集:使用并查集可以把每个连通分量看作一个集合,该集合包含连通分量的所有点.这两两连通而具体的连通方式无关紧要,就好比集合中的元素没有先后顺序之分,只有属于和不属于的区别.#define N 100 ...
- 交换排序—快速排序(Quick Sort)
基本思想: 1)选择一个基准元素,通常选择第一个元素或者最后一个元素, 2)通过一趟排序讲待排序的记录分割成独立的两部分,其中一部分记录的元素值均比基准元素值小.另一部分记录的 元素值比基准值大. 3 ...
- 文献管理工具的使用(Mendeley和Endnote)
以前是Mendeley的忠诚用户,但是最近在linux平台下出现的bug使我非常崩溃,之前辛辛苦苦整理的文献和分组,分分钟灰飞烟灭.所以希望能转用一个至少比较稳定的文献管理软件.刚好手头上有Mac版的 ...
- android 滑动分页
import android.app.ListActivity;import android.os.Bundle;import android.os.Handler;import android.vi ...
- Mysql中一级缓存二级缓存区别
一级缓存: 也称本地缓存,sqlSession级别的缓存.一级缓存是一直开启的:与数据库同一次会话期间查询到的数据会放在本地缓存中. 如果需要获取相同的数据,直接从缓存中拿,不会再查数据库. 一级缓存 ...
- /var/spool/clientmqueue目录下存在大量文件的原因及解决方法
问题现象:linux操作系统中的/var/spool/clientmqueue/目录下存在大量文件.原因分析: 系统中有用户开启了cron,而cron中执行的程序有输出内容,输出内容会以邮件形式发给c ...
- 【Alpha版本】冲刺阶段 - Day3 - 逆风
今日进展 袁逸灏:右上角两个按键的添加与实现监听(5h) 刘伟康:继续借鉴其他 alpha 冲刺博客,由于我们组的App原型可以在 alpha 阶段完成,所以不需要墨刀工具展示原型(2h) 刘先润:更 ...
- C/C++生成随机数
一.rand和srand 在C++11标准出来之前,C/C++都依赖于stdlib.h头文件的rand或者srand来生成随机数. 其不是真正的随机数,是一个伪随机数,是根据一个数(我们可以称 ...
- 1013团队Beta冲刺day2
项目进展 李明皇 今天解决的进度 优化了信息详情页的布局:日期显示,添加举报按钮等 优化了程序的数据传递逻辑 明天安排 程序运行逻辑的完善 林翔 今天解决的进度 实现微信端消息发布的插入数据库 明天安 ...
- 学号:201621123032 《Java程序设计》第12周学习总结
1:本周学习总结 1.1:以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2:面向系统综合设计-图书馆管理系统或购物车 2.1: 简述如何使用流与文件改造你的系统.文件中数据的格式如何? ...