《SQL 基础教程》—第一章:数据库与 SQL
导言
这一章的内容如下:
- 数据库简介
- SQL 概要
- 表的创建
- 表的删除与更新
数据库简介
定义:
Database, 是大量数据的集合
Database Management System,是用于管理数据库的计算机系统.
DBMS 的种类
通过数据库的种类(数据的保存格式),将数据库分为主要的 5 类.
- 层次数据库 Hierarchical Database
- 关系数据库 Relational Database :与 Excel 工作表一样,采用二维表进行管理数据,并且使用专门的 SQL(Structured Query Language) 对数据进行操作
- 面向对象数据库 Object Oriented Database
- XML 数据库 XML Database
- 键值储存数据库 Key-Value Store
RDBMS 的系统结构
最常见的结构是 C/S 类型的结构
其中的服务器为 RDMS, 它能从保存在硬盘上的数据库读取数据并返回,
SQL 概要
SQL 语句及其种类
- DDL: Data Definition Language, 数据定义语言
比如:CREATE 创建数据库/表对象; DROP 删除对象; ALTER 修改数据库对象的结构 - DML: Data Manipulation Language, 数据操控语言
比如 SLECT 查询表中的数据; INSERT 插入数据; UPDATE 更新数据; DELETE 删除数据 - DCL: Date Control Language, 数据控制语言,用于决定用户的操作权限和确认或取消变更.
基本书写规则
- SQL 语句以“ ; ”结尾
- 不区分关键字大小写
- 常数书写格式固定
表的创建
数据库的创建
格式:
CREATE DATABASE ;
表的创建
格式:
CREATE TABLE
( ,
,
...
<table's control="">);
命名规则
数据库名、表名、列名需要遵循以下规则:
- 可使用英文、数字、下划线
- 必须使用英文开头
- 名称不能重复
数据类型
常见的有下面几种数据类型:
- INTEGER
- CHAR: 定长字符
- VARCHAR: 可变长字符
- DATE:日期
约束的设置
每一行最右侧可以设置 NOT NULL 约束,意思是不可为空.
PRIMARY KEY(product_id) 为主键约束,表示取得唯一数据的一列.
表的删除和更新
表的删除
格式:
DROP TABLE ;
表的更新
格式:
ALTER TABLE ADD/DROP COLUMN
插入数据
格式:
BEGIN TRANSACTION;
INSERT INTO VALUES ( ....);
COMMIT;
《SQL 基础教程》—第一章:数据库与 SQL的更多相关文章
- 村田噪声抑制基础教程-第一章 需要EMI静噪滤波器的原因
1-1. 简介 EMI静噪滤波器 (EMIFIL®) 是为电子设备提供电磁噪声抑制的电子元件,配合屏蔽罩和其他保护装置一起使用.这种滤波器仅从通过连线传导的电流中提取并移除引起电磁噪声的元件.第1章说 ...
- 第一章 数据库和SQL
1-1 数据库是什么? 一.数据库的含义 数据库是将大量数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合. 数据库DB 二.数据库管理系统 DBMS 用来管理数据库的计算机系统称为 ...
- python 机器学习基础教程——第一章,引言
https://www.cnblogs.com/HolyShine/p/10819831.html # from sklearn.datasets import load_iris import nu ...
- Python基础教程-第一章-变量、函数、字符串
1.1变量 变量基本上就是代表(或者引用)某个值的名字,举例来说,如果希望用x代表3,只需要执行下面的语句即可: >>>x = 3 这样的操作称为赋值(assignment),值3赋 ...
- 《SQL基础教程》
Product表 CREATE TABLE Product (product_id CHAR(4) NOT NULL, product_name VARCHAR(100) NOT NULL, prod ...
- 阅读SQL基础教程
这两天阅读SQL基础教程,目标是把SQL语法吃透,会写一些笔记.
- 《SQL基础教程》+ 《SQL进阶教程》 学习笔记
写在前面:本文主要注重 SQL 的理论.主流覆盖的功能范围及其基本语法/用法.至于详细的 SQL 语法/用法,因为每家 DBMS 都有些许不同,我会在以后专门介绍某款DBMS(例如 PostgreSQ ...
- 推荐《SQL基础教程(第2版)》中文PDF+源代码+习题答案
我认为<SQL基础教程(第2版)>非常适合数据库学习的初学者.论述的角度是读者的角度,会换位思考到读者在看到这一段时候会发出怎样的疑问,非常难得:原始数据的例题只有一道,但是可以反复从不同 ...
- [SQL基础教程] 4-4 事务
[SQL基础教程] 4 数据更新 4-4 事务 事务 需要在同一处理单元中执行的一系列更新处理的集合 创建事务 事务开始语句; DML语句1; DML语句2; . . . 事务结束语句; 事务开始语句 ...
随机推荐
- oracle RAC如何正确地删除ASM磁盘组
1.登录到命令行 切换到grid用户 [grid@swnode1 ~]$ sqlplus / as sysasm SQL*Plus: Release Production on Wed May :: ...
- PHP html mysql js 乱码问题,UTF-8(乱码)
一.HTML页面转UTF-8编码问题 1.在head后,title前加入一行: <meta http-equiv='Content-Type' content='text/html; chars ...
- 《C Elements of Style》 书摘
<C Elements of Style> 书摘 学完C语言和数据结构后,虽然能解决一些问题,但总觉得自己写的程序丑陋,不专业.这时候看到了Steve Oualline写的<C El ...
- VC++ 使用ShellExecute函数调用邮箱客户端发送邮件(可以带附件)
之前写过一篇博文,通过MAPI实现调用邮箱客户端发送邮件带附件,当时对ShellExecute研究不深,以为ShellExecute不能带附件,因为项目需求原因(MAPI只能调用Foxmail和O ...
- topcoder srm 555 div1
problem1 link 直接动态规划即可. problem2 link 假设有$r$行,$c$列被修改了奇数次,那么一定有$r*W+c*H-2*r*c=S$.可以枚举这样的组合$(r,c)$,然后 ...
- SpringBoot 使用Hikaricp连接池
1.添加pom.xml依赖 如果是SpringBoot2.0,那么默认的连接池就是Hikaricp,不需要配置 其他的,如果继承 <parent> <groupId>org.s ...
- SpringBoot 解决HttpServletRequest只能读取一次
业务逻辑,通过filter读取请求的request,获取token,并将token传递后面流程使用 BodyReaderHttpServletRequestWrapper: public class ...
- 2018 蓝桥杯省赛 B 组模拟赛(五)
A模拟 代码1 #include<bits/stdc++.h> using namespace std; int n = 101; int a[120][120]; int ans = 0 ...
- IDEA移动到另一电脑
idea当电脑迁移后,可以直接将已安装的idea目录进行迁移(要保证迁移前后项目目录绝对路径相同) 步骤: 1.将idea的安装目录复制到另一台电脑上 2.将IDEA相关的配置路径下的目录页复制到另一 ...
- LuoguP2257 YY的GCD
题目描述 神犇YY虐完数论后给傻×kAc出了一题 给定N, M,求1<=x<=N, 1<=y<=M且gcd(x, y)为质数的(x, y)有多少对 kAc这种傻×必然不会了,于 ...