数据库基笔记

合集下载

中等职业教材数据库应用基础(第三版)第一章笔记整理

中等职业教材数据库应用基础(第三版)第一章笔记整理

中等职业教材数据库应用基础(第三版)第一章笔记整理摘要:一、前言二、数据库系统基本概念1.数据2.数据库3.数据库管理系统4.数据库系统三、数据库设计1.需求分析2.概念设计3.逻辑设计4.物理设计四、关系数据库基本概念1.关系模型2.关系运算3.关系数据库的规范化五、SQL 语言1.SQL 概述2.SQL 数据定义3.SQL 数据操作4.SQL 数据查询5.SQL 数据更新六、数据库的安全与保护1.数据安全2.数据完整性3.并发控制4.数据备份与恢复七、数据库应用系统设计与开发1.数据库应用系统设计2.数据库应用系统开发3.数据库应用系统实例八、数据库技术的发展趋势正文:【前言】随着计算机技术的飞速发展,数据库技术在各行各业中得到了广泛的应用。

数据库技术不仅成为了计算机科学与技术领域的一个重要分支,而且已经深入到了日常工作和生活的方方面面。

本章将介绍数据库应用基础,帮助读者了解和掌握数据库技术的基本原理和应用方法。

【数据库系统基本概念】为了更好地理解数据库技术,首先需要了解数据、数据库、数据库管理系统和数据库系统这四个基本概念。

数据是指存储在计算机中的各种信息,数据库是对数据进行统一组织、存储、管理和维护的集合,数据库管理系统是用于管理数据库的计算机软件,而数据库系统则是数据库与数据库管理系统相结合的产物。

【数据库设计】数据库设计是数据库应用的基础,包括需求分析、概念设计、逻辑设计和物理设计四个阶段。

需求分析是为了了解用户的需求,概念设计是将需求转化为信息结构,逻辑设计是将信息结构转换为逻辑结构,物理设计则是将逻辑结构转换为物理结构。

【关系数据库基本概念】关系数据库是基于关系模型的数据库,采用关系运算、关系查询和关系更新等方式进行数据操作。

为了保证数据的一致性和正确性,需要对关系数据库进行规范化。

【SQL 语言】SQL(结构化查询语言)是关系数据库的通用语言,用于对数据库进行定义、操作和查询。

tidb数据库核心原理与架构笔记

tidb数据库核心原理与架构笔记

tidb数据库核心原理与架构笔记TiDB是一种分布式数据库系统,以其可伸缩性、强一致性和高可用性而受到广泛关注。

本文将深入探讨TiDB的核心原理和架构,以及它所提供的关键功能和优势。

一、TiDB的概述TiDB是PingCAP开发并维护的一种开源分布式数据库系统,它通过将关系型数据库和分布式系统相结合,实现了水平扩展和高性能的特性。

相比传统的单机数据库,TiDB能够处理海量数据和高并发访问的需求。

二、TiDB的核心原理1. 分布式架构TiDB采用分布式架构,将数据分散存储在多个节点上,并通过Raft协议实现数据的一致性。

每个节点都是平等的,具有相同的角色和功能,可以承担查询、事务和存储的任务。

数据分片和复制策略确保了数据的可靠性和高可用性。

2. 一致性哈希算法TiDB使用一致性哈希算法将数据分片,并将每个片段分散存储在不同的节点上。

这种分片方式能够保证数据的均衡分布和负载均衡,同时实现了水平扩展的能力。

3. 分布式事务TiDB支持分布式事务,通过二阶段提交协议(2PC)确保事务的原子性和一致性。

在分布式环境下,事务管理变得更加复杂,但TiDB通过高效的协议和锁机制,实现了事务的可靠性和高性能。

4. SQL优化器TiDB的SQL优化器能够解析和优化复杂的SQL查询语句,以提高查询性能和资源利用率。

它采用了基于成本的优化策略,通过计算查询的执行代价和选择最佳的执行计划,使得查询结果更加高效和准确。

三、TiDB的架构1. TiDB ServerTiDB Server是TiDB的核心组件,负责处理SQL查询和事务管理。

它通过解析、优化和执行查询计划,将查询请求发送到合适的存储节点,并返回查询结果给客户端。

2. TiKVTiKV是TiDB的分布式存储引擎,负责实际的数据存储和读写操作。

TiKV使用RocksDB作为底层存储引擎,通过Raft协议实现数据的一致性和可靠性。

每个TiKV节点都包含多个Region,通过Leader和Follower之间的复制机制确保数据的一致性和高可用性。

中等职业教材数据库应用基础(第三版)第一章笔记整理

中等职业教材数据库应用基础(第三版)第一章笔记整理

中等职业教材数据库应用基础(第三版)第一章笔记整理根据你提供的信息,我整理了《中等职业教材数据库应用基础(第三版)》第一章的笔记如下:第一章:数据库基础知识1. 数据库概述- 数据库是一种组织和管理数据的系统,可以按照特定的结构和方式存储、检索和处理数据。

- 数据库管理系统(DBMS)是管理和操作数据库的软件。

2. 数据库的组成要素- 数据库的组成要素包括数据、数据库模型、数据库管理系统(DBMS)、数据库管理员和数据库应用程序。

3. 数据库模型- 数据库模型是描述和定义数据、数据结构、数据关系、数据操作和数据约束的方式。

- 常见的数据库模型包括层次模型、网状模型、关系模型、面向对象模型和面向文档模型。

4. 关系模型- 关系模型是最常用的数据库模型,采用表的形式表示数据,表之间通过关系建立联系。

- 表由行和列组成,每行表示一个记录,每列表示记录的一个属性。

5. 数据库管理系统(DBMS)- DBMS是管理和操作数据库的软件,提供数据定义语言(DDL)、数据操作语言(DML)和数据查询语言(DQL)等功能。

- 常见的DBMS包括Oracle、MySQL、SQL Server等。

6. 数据库管理员- 数据库管理员负责数据库的设计、安装、配置、维护和管理等工作。

- 数据库管理员还负责数据库的备份和恢复、性能优化和安全管理等工作。

7. 数据库应用程序- 数据库应用程序是使用数据库存储和处理数据的应用软件。

- 数据库应用程序可以通过编程语言(如Java、C#)或者数据库查询语言(如SQL)进行开发。

8. 数据库的基本操作- 数据库的基本操作包括创建数据库、创建表、插入数据、查询数据、更新数据和删除数据等操作。

上述内容是第一章《数据库基础知识》的笔记整理,主要介绍了数据库的概述、组成要素、模型、数据库管理系统、数据库管理员、数据库应用程序以及数据库的基本操作等相关知识点。

希望对你有帮助!。

VFB数据库笔记汇总

VFB数据库笔记汇总

第一章数据库基础知识1、数据库管理系统:DBMS;数据库应用系统:DBAS;数据库系统:DBS;数据:DBDBS包括DBMS,DBAS,DB2、实体间的联系:一对一,一对多,多对多。

3、数据库中的数据模型:网状模型,层次模型,关系模型。

4、关系:一个关系就是一个二维表,每一个关系有一个关系名。

5、元组:二维表中的行称为元组。

6、属性:二维表中的列称为属性。

7、域:属性的取值范围。

8、关系→表;关系名→表名;属性→字段;元组→记录;行→记录,元组;列→字段,属性。

9、传统的集合运算:并,差,交。

10、专门的关系运算:选择(水平方向) for,while,where投影(垂直方向) fields,select联接(一对一,一对多,多对多)11、定义数组:dime/declare 数组名(3,4)第二章 VF基础知识1、创建项目:①通过菜单创建②命令:creat project项目名2、打开项目管理器:①通过“文件→打开”菜单项②命令:modify project 项目名3、各类文件选项卡:①数据选项卡(数据库,自由表,查询,视图)②文档选项卡(表单,报表,标签)③类④代码⑤其他第三章数据与数据运算1、字段数据类型(11种)* N包括Y,F,B,I2、变量:在程序运行过程中,其值可能发生变化的量。

3、变量的分类:字段变量,内存变量,数组变量,系统变量,对象变量。

4、常用的函数①、数值型函数1.绝对值函数【函数格式】 ?abs(<数值表达式> )【函数功能】返回指定“数值表达式”的绝对值【返回值类型】数值型eg:?abs(-1) 12.平方根函数【函数格式】 ?sqrt(<数值表达式>)【函数功能】返回指定“数值表达式”值的平方根。

“数值表达式”的值必须是大于或等于零【返回值类型】数值型eg:?sqrt(25) 5?sqrt(81) 9?sqrt(7^2-4*2*4) 4.123.取整函数【函数格式】 ?int(<数值表达式>)【函数功能】返回指定“数值表达式”整数部分的值【返回值类型】数值型eg:?int(6489.658) 6489?int(123.58) 1234.四舍五入函数【函数格式】 ?round(<数值表达式1>,<数值表达式2>)【函数功能】对指定的<数值表达式1>进行四舍五入运算【使用说明】 <数值表达式2>指定四舍五入运算精确的位数。

Oracle数据库学习笔记

Oracle数据库学习笔记

Oracle数据库学习笔记Oracle数据库基础 orcale属于关系型数据库,适⽤于各类⼤,中,⼩,微机环境,是⼀种⾼效率、可靠性好的、适应⾼吞吐量的数据库⽅案。

学习,实验完全免费,商⽤需要⽀付相应费⽤。

Oracle 数据库包括数据库实例,和数据库,⼆者脱离谁都没有存在的价值。

实例是⽤来操作数据库的对象,数据库是⽤来存储数据使⽤的。

Oracle主要组件包含实例组件,数据库组件。

SGA(System Global Area)是Oracle Instance的基本组成部分,PGA(Process Global Area)是为每个连接到Oracle database的⽤户进程保留的内存。

每个实例只有⼀个SGA,所有的进程都能访SGA。

PGA是程序全局区,每个⼀个进程都⼀个PGA,PGA是私有的,只有对应进程才能访问对应的PGA。

数据库中包含:参数⽂件,⼝令⽂件,数据库⽂件,控制⽂件,⽇志⽂件以及归档⽇志⽂件。

Oracle实例进场包含⽤户进程,服务器进程和后台进程。

SGA:系统全局区 系统全局区包含共享池,数据缓冲区,⽇志缓冲区。

“共享池”:是对SQL,PL/SQL程序进⾏语法分析,编译,执⾏的内存区;由库缓存和数据字典缓存组成;其⼤⼩直接影响数据库性能。

“数据缓冲区”:临时存储从数据库读⼊的数据,所有⽤户共享,数据缓存区的⽬的是加快数据读写。

“⽇志缓冲区”:⽇志记录数据库所有修改信息,其先产⽣于⽇志缓冲区,当达到⼀定数量时,由后台进程将⽇志数据写到⽇志⽂件中。

PGA:程序全局区 PGA包含单个服务器进程所需要的数据和控制信息,在⽤户进程连接到数据库并创建⼀个会话时⾃动分配的,保存每个与数据库连接的⽤户进程所需要的信息。

PGA为⾮共享区,只能单个进程使⽤,当⼀个⽤户会话结束,PGA释放。

后台进程 后台进程中包含PMON(进程监视器(Process Monitor)),SMON(系统监视器(System Monitor)),DBWR(数据库书写器(Database Write)),LGWR(⽇志书写器(Log Write)),CKPT(检查点(Checkpoint)),以及其他。

《快速念咒:MySQL入门指南与进阶实战》笔记

《快速念咒:MySQL入门指南与进阶实战》笔记

《快速念咒:MySQL入门指南与进阶实战》阅读记录1. 第一章数据库基础在开始学习MySQL之前,了解一些数据库的基础知识是非常重要的。

数据库是一个用于存储和管理数据的计算机软件系统,它允许用户通过关键字或特定的查询语言来检索、更新和管理数据。

在数据库中,数据是以表格的形式进行组织的,每个表格都包含了一组相关的数据项,这些数据项被称为记录。

表(Table):表是数据库中存储数据的基本单位。

每个表都有一个唯一的名称,并由行(Row)和列(Column)组成。

每一行代表一个数据记录,每一列代表一个特定的数据属性。

字段(Field):字段是表中的一列,代表了数据的一种属性。

每个字段都有一个唯一的名称和一个数据类型,用于定义该字段可以存储的数据种类。

主键(Primary Key):主键是表中的一个特殊字段,用于唯一标识表中的每一行记录。

主键的值必须是唯一的,且不能为NULL。

外键(Foreign Key):外键是一个表中的字段,它的值引用了另一个表的主键值。

外键用于建立两个表之间的联系,确保引用完整性。

索引(Index):索引是一种数据库优化技术,用于提高查询性能。

通过创建索引,数据库可以更快地定位到表中的特定记录,而不必扫描整个表。

SQL(Structured Query Language):SQL是用于与数据库进行交互的编程语言。

它包括用于数据查询、插入、更新和删除的操作符和语法结构。

理解这些基本概念是学习MySQL的前提。

通过掌握SQL语言的基本语法和操作,你将能够有效地管理和操作数据库中的数据。

在接下来的章节中,我们将深入探讨MySQL的具体应用,包括如何创建和管理数据库、表、以及如何执行复杂的查询操作。

2. 第二章数据库设计《快速念咒:MySQL入门指南与进阶实战》是一本全面介绍MySQL 数据库的书籍,其中第二章详细阐述了数据库设计的基础知识和实践技巧。

在这一章节中,作者首先介绍了数据库设计的基本概念和目标,包括数据模型、实体关系模型(ER模型)等,并解释了如何通过这些模型来描述现实世界中的数据和业务逻辑。

Mysql笔记(附Mysql基础书pdf版)

Mysql笔记(附Mysql基础书pdf版)

Mysql笔记(附Mysql基础书pdf版)资料数据库篇SHOW DATABASES; //显⽰数据库系统中已经存在的数据库CREATE DATABASE 数据库名; //创建数据库DROP DATABASE 数据库名; //删除数据库表篇注:在使⽤操作表语句前,⾸先要使⽤USE语句选择数据库。

选择数据库语句的基本格式为“USE 数据库名”。

否则会报错,1046;CREATE TABLE 表名 ( 属性名数据类型 [完整性约束条件],属性名数据类型 [完整性约束条件],属性名数据类型);表名不能为SQL语句的关键字,⼀个表可以有多个属性。

定义时,字母⼤⼩写均可,各属性之间⽤逗号隔开,最后⼀个属性不需要加逗号。

主键主键有唯⼀值单字段主键属性名数据类型 primary key //创建主键,写在属性名数据类型后⾯;多字段主键primary key(属性名 1,属性名2,属性名n)两者的组合可以确定唯⼀的⼀条记录;外键外键不⼀定必须为⽗表的主键,但必须是唯⼀性索引,主键约束和唯⼀性约束都是唯⼀性索引;外键可以为空值;设置外键的基本语法规则如下:CONSTRAINT 外键别名 FOREIGN KEY(属性 1.1,属性1.2,属性1.n)REFERENCES 表名(属性2.1,属性2.2,属性2.n)其中,“外键别名”参数是为外键的代号;“属性1”参数列表是⼦表中设置的外键;“表名”参数是指⽗表的名称;“属性2”参数列表是⽗表的主键。

设置表的⾮空约束设置表的唯⼀性约束设置表的属性值⾃动增加查看表结构DESCRIBE 表名; // 查看表基本结构语句,可缩写为desc 表名SHOW CREATE TABLE 表名; //查看表详细结构语句(包含存储引擎、字符编码)删除表DROP TABLE 表名;//删除没有被关联的普通表删除⽗表需要先将外键删除,然后才能去删除⽗表。

字段篇//通过ALTER TABLE语句ALTER TABLE 旧表名 RENAME [TO] 新表名;//修改表名 TO参数是可选参数,是否在语句中出现不会影响语句的执⾏。

数据库原理笔记

数据库原理笔记

数据库原理笔记数据库概念数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的⼤量数据的集合。

1. 数据库系统的特点数据结构化数据的共享性⾼,冗余度低,易扩充数据独⽴性⾼数据由DBMS统⼀管理和控制1. 两⼤类数据模型概念模型也称信息模型,它是按⽤户的观点来对数据和信息建模,⽤于数据库设计。

逻辑模型和物理模型,逻辑模型主要包括⽹状模型、层次模型、关系模型、⾯向对象模型等,按计算机系统的观点对数据建模,⽤于DBMS实现。

物理模型是对数据最底层的抽象,描述数据在系统内部的表⽰⽅式和存取⽅法,在磁盘或磁带上的存储⽅式和存取⽅法。

1. 关系数据库关系数据库系统采⽤关系模型作为数据的组织⽅式,在⽤户观点下,关系模型中数据的逻辑结构是⼀张⼆维表,它由⾏和列组成。

关系的每⼀个分量必须是⼀个不可分的数据项, 不允许表中还有表。

1. 数据库系统的三级模式结构模式(Schema)外模式(External Schema)内模式(Internal Schema)1. 关系模式关系模式可以形式化地表⽰为:R(U,D,DOM,F)R 关系名U 组成该关系的属性名集合D 属性组U中属性所来⾃的域DOM 属性向域的映象集合F 属性间的数据依赖关系集合1. 实体完整性规则(Entity Integrity)若属性A是基本关系R的主属性,则属性A不能取空值;关系模型中以主码作为唯⼀性标识。

1. 参照完整性规则若属性(或属性组)F是基本关系R的外码它与基本关系S的主码Ks相对应(基本关系R和S不⼀定是不同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值)或者等于S中某个元组的主码值1. 关系代数运算符关系数据库标准语⾔SQLSQL(Structured Query Language)结构化查询语⾔,是关系数据库的标准语⾔。

集数据定义语⾔(DDL),数据操纵语⾔(DML),数据控制语⾔(DCL)功能于⼀体。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一.数据库初始1.需求分析(1).优良的数据库设计减少数据冗杂、避免数据维护异常、节约储存空间、高效访问(2).设计流程需求分析(数据--属性--两者各自特点)逻辑设计(ER图逻辑建模)物理设计(依据各数据库特点)维护优化(新建、索引优化、大表拆分)(3).为何需求分析与内容都是什么数据、特点、数据周期实体及其间的关系(1v1、1Vn、nVn)、实体包含的属性、怎样标识唯一个体注:永久与不永久储存、分表与分库储存、归档与清理2.逻辑设计(1).ER图矩形:实体集菱形:关系集椭圆:属性线段:图像间连接(2).设计范式(第一、第二、第三、BC)第一范式(1NF):表中所有字段都是单一属性,不可再分,也就是说都是二维表,如用户信息不可再分为姓名与电话第二范式(2NF):数据库表中不存在非关键字短发对任一候选关键字段的部分函数依赖。

(部分函数依赖存在于组合关键字中:多个属性组合起来确定唯一物品)如商品名称与供应商为组合关键字,但供应商决定了其电话,商品决定了价格等,故而但关键字的一定符合2NF,有组合关键字则不一定第三范式(3NF):在2NF基础上,数据表中不存在非关键字段对任意候选关键字段的传递函数依赖。

如商品名称——分类——分类描述,即分类描述对商品名称有传递函数依赖BC范式:在3NF基础上,数据库表中不存在任何字段对任一候选关键字段的传递函数依赖,即复合关键字间也不可有函数依赖。

(3).操作异常:由于实体间有依存关系(插入异常--更新异常、删除异常)(4).数据冗杂:相同数据多次出现或可由其它列计算得到3.物理设计(1).做什么选择合适数据库管理系统----定义数据库与表及字段的命名规范----根据所选的DBMS系统选择合适的字段类型---- 反范式化设计(2).DBNS系统(3).命名规范可读性原则(大小写,如CustAddress)表意性原则(描述数据内容、储存过称的功能)长名原则(不用意义不明的缩写)(4).字段类型优先选择数字类型,其次是日期或二进制类型,最后是字符Char与varchar区别:数据长度差不多、最大小于50b用char(浮点)Decimal与float区别:decimal用于精确数据(保留X位小数),float用于非精确Int与datatime区别:前者空间少,但后者常用于频繁调用时间时(5).主键选择业务主键用于标识业务数据,进行表间关联;数据库主键用于优化储存若数据库按主键顺序逻辑储存,则主键增长主键字段要小6.避免外键、触发器与预留字段(7).反范式化(适当对3NF违反,进而提高性能与读取效率)减少表的关联数量增加数据读取效率反范式化要适度4.维护与优化(1).内容维护数据字典、维护索引、维护表结构、适当对表水平或垂直拆分(2).维护数据字典使用第三方工具数据库本身的备注字段(COMMENT)——导出数据字典(3).维护索引①选择出现在WHERE从句、GROUP BY从句、ORDER BY从句中列选择性高的列放于最前面数据类型要短②注意事项索引要少、定期维护索引碎片、不使用强制索引关键字(4).维护表结构注意在线变更表结构、同时对数据字典维护、控制表宽度与大小(5).表垂直(宽度)与水平拆分(数据量)对多列表拆为几个少列表、对多个行拆为多个(Hash key)(6).数据库中合适的操作批量操作优于逐条操作禁止使用Select*查询控制自定义函数的应用(使用函数时列索引无效)不使用数据库全文索引二.MySQL数据库1.安装、配置与简单操作(1).目录结构bin:储存可执行文件data:储存数据文件docs:文档include:储存包含的头文件lib:储存库文件share:错误消息与字符集文件(2).开启与关闭服务窗口化操作或dos操作,如net start mysql和net stop mysql(3).DOS参数如图1—1,—u名—p密码—P3306 —hXXX 1-1(4)修改提示符prompt名名可为自定义字符,也可为系统内置如\D(完整日期)、\d(当前数据库)、\h(服务器名)、\u(用户名)(5)常用命令SELECT VERSION();服务器版本SELECT NOW();当前日期SELECT USER(); 当前用户SELECT DATABASE(); 当前打开的数据库(6)语句规范关键字与函数名称全大写数据库名称、表名称、字段名称都小写Sql语句以分号结尾二、SQL基础1.DDL(数据定义语言)语句(1)创建数据库CREATE DATABASE t1;SHOW DATABASES;(显示数据库)USE t1;(选择数据库)SHOW TABLES;(显示表格)(2)删除数据库DROP DATABASE t1;(3)创建表CREATE TABLE t11(enamevarchar(10),hiredata data,salary decimal(10,2));DESC t2;(显示表结构)(4)删除表DROP TABLE t2;(5)修改表①修改表类型ALTER TABLE t2 MODIFY enameVARCHAR(10);②增加表字段ALTER TABLE t2 ADD COLUMN age INT(3);③删除表字段ALTER TABLE t2 DROP COLUMN age;④表字段改名ALTER TABLE t2 CHANGE age workageINT(4);⑤修改字段排序ALTER TABLE t2 ADD birth DATE AFTER ename;(添于ename之后)ALTER TABLE t2 MODIFY age INT(3) FIRST;(添于最前端)⑥更改表名ALTER TABLE t2 RENAME t22;2.DML(数据操纵语言)语句(1)插入记录INSERT INTO t2(ename,hiredate) VALUES(‘lisa’,’2003-02-01’);=INSERT INTO t2 VALUES(‘lisa’,’2003-02-01’);(不指名时按默认顺序填充)INSERT INTO t2(ename,sal) VALUES(‘lisa’,1000);(选定名时未选部分按默认值填充)SELECT * FROM t2;(查看表内容)(2)更新记录UPDATE t2 SET sal=4000 WHERE ename=’lisa’;(按enamel更新sal)UPDATE t2 a,t3 b SET a.sal=a.sal*b.deptno,b.deptname=a.ename WHERE a.deptno=b.deptno;(以deptno为连接点同时更新t2与t3表)(3)删除记录DELETE FROM t2 WHERE ename=’lisa’;(删除lisa数据行)DELETE a,b FROM t2 a,t3 b WHERE a.deptno=b.deptno AND a.deptno=3;(删除多条记录)(4)查询记录SELECT * FROM t2;(查询表的所有条目)SELECT ename FROM t2;(查询ename条目与表中)①查询不重复记录SELECT DISTINCT deptno FROM t2;②条件查询SELECT * FROM t2 WHERE deptno=1 AND sal<3000;(where后接条件,可以是or、and等)③排序与限制查询字段SELECT * FROM t2 ORDER BY sal;(DESC为降序,ASC为升序,默认为升序)SELECT * FROM t2 ORDER BY deptno, sal DESC;(当有重复记录时,用第二个关键词对之排序)SELECT * FROM t2 ORDER BY sal LIMIT3;(显示前三条记录)SELECT * FROM t2 ORDER BY sal LIMIT1,3;(从第二条开始的三条记录,默认起始为0)④聚合SELECT COUNT(1) FROM t1;(显示总人数)SELECT deptno,COUNT(1) FROM t1 GROUP BY deptno;(显示各部门人数)SELECT deptno,COUNT(1) FROM t1 GROUP BY deptno WITH ROLLUP;(显示各部门人数和总人数)SELECT deptno,COUNT(1) FROM t1 GROUP BY deptno HAVING COUNT(1)>1;(人数大于一的部门人数)SELECT SUM(sal),MAX(sal),MIN(sal) FROM t1;(除计数函数外还有诸如求和、最值等函数)⑤表连接a.内连接SELECT ename,deptname FROM t1,t2 WHERE t1.deptno=t2.deptno;b.外连接左连接:SELECT ename,deptname FROM t1 LEFT JOIN t2 ON t1.deptno=t2.deptno; 右连接:SELECT ename,deptname FROM t2 RIGHT JOIN t1 ON t2.deptno=t1.deptno;⑥子查询SELECT * FROM t1 WHERE deptnoIN(SELECT deptno FROM t2);当记录唯一时可用“=”代替in:SELECT * FROM t1 WHERE deptno(SELECT deptno FROM t2 LIMIT1);其关键字还有诸如not in、!=、exisits、not exisits等⑦记录联合a.直接联合:SELECT deptno FROMt1UNION ALLSELECT deptno FROM t2;b.去重联合:SELECT deptno FROM t1UNIONSELECT deptno FROM t2;三.数据类型型:(2)浮点与定点型(3)日期时间类型(4)字符型(5)附件条件与表格①空值与非空:可空NULL、非空NOT NULLCREATE TABLE t12(username CHAR(8) NOT NULL,age TINYINT UNSIGNED);②自动编号(主键有唯一性、单一性、非空性):AUTO_INCREMENT加主键如,CREATE TABLE t13(id SMALLINT UNSIGNED AUTO_INCREMENT KEY(主键),username CHAR(8) NOT NULL);注:UNIQUE KEY 唯一约束,与主键PRIMARY KEY 主键约束区别是每表可以存在多个且可有空值。

相关文档
最新文档