关系型数据库与SQL简介

一、SQL简介

1.是用于组织、管理与检索由计算机数据库所存储数据的工具,是用于与数据库进行交互的计算机语言;是集数据操作、数据定义、数据控制功能于一体的关系数据语言

2.SQL是非结构化语言,非过程化语言;所有SQL语句接受集合作为输入,返回集合作为输出,使用的是查询优化器

3.oracle支持多用户、大事物量的事务处理;数据安全性和完整性控制;支持分布式数据处理;可移植性

4.数据库服务器对数据库表进行最佳管理,处理多个客户端对同一数据库表的并发访问。全面保持数据的完整性,并控制数据库访问权限

5.oracle实例:管理数据库后台进程和内存结构的集合。内存结构包括两个内存区:系统全局区(SGA)、程序全局区(PGA)

6.SGA内存结构:共享池(对SQL、PL/SQL等程序进行语法分析、编译、执行的内存区域)、数据缓冲区、日志缓冲区

7、oracle实例进程结构(用户进程、服务器进程、后台进程)。后台进程是oracle数据库为了保持最佳系统性能和协调多个用户的请求而设置的

二、SQL的功能、特性与分类

1.SQL是与数据库管理系统(DBMS-控制数据库的计算机程序,能够帮助计算机用户组织与构建数据)进行通信的语言或工具;当需要从数据库中检索数据时,可使用SQL建立请求,DBMS处理SQL请求,检索所需数据,并将检索到的数据返回给用户

2.DQL(数据库查询语言)用于获取数据及对数据进行排序

  DML(数据库操纵语言)用来插入、删除和修改数据

select/insert/update/delete

  DDL(数据定义语言)定义数据库、基本表、视图和索引

create/drop/truncate/alter等

  DCL(数据控制语言)管理对数据库及数据库对象权限

主要有grant/deny/revoke/commit/rollback

三、SQL扩展

现有SQL标准还不适用于为关系型数据库编写各种类型的程序,数据库厂商为满足用户需求,开始扩展SQL语言

1.字符串运算符允许通过+进行字符串串联,该加号就是字符串运算符

select 'abc'+'def' 结果为abcdef

mysql:select 'abc' 'def'

2.MySQL服务器中包含其他SQL DBMS中不具备的拓展,若使用MySQL,则无法将代码移植到其他SQL服务器中;MySQL不支持SQL针对字符串连接的||运算符,而是采用concat()取代,concat()能够接收任意数目参数

3.PL/SQL是一种高性能基于事物处理的语言,它通过添加在其他过程语言中具有的控制结构来扩展SQL;PL/SQL不是一个独立产品,是融入到oracle服务器和oracle工具中的技术,是完全可以移植的

4.PL/SQL是一种块结构语言,组成PL/SQL程序的单元是逻辑块;PL/SQL逻辑块可分为三个部分:声明部分、可执行部分和异常处理部分

5.J2EE将java database connectivity(JDBC)作为java访问关系数据库标准

四、PL/SQL

1.PL/SQL提供4种内置数据类型,即标量数据类型、组合数据类型、引用数据类型和LOB类型

标量数据类型:number;char(用于存储固定长度字符数据);RAW用于存储二进制数据或者字符串;varchar2(容纳可变长度字符串);date存储固定长度日期和时间数据;boolean类型存储逻辑型false、true和null

组合类型:record(记录)、table(表)、varray(可变数组)等

引用数据类型:ref cursor(游标变量)和REF操作符,可在程序运行时指定不同存储位置

LOB类型:主要用于存储大型对象,可以是二进制型或者字符型

2.PL/SQL是SQL扩展语言,其结合SQL语言的数据操纵能力和过程语言的流程控制能力,SQL语言可以直接写到PLSQL块中,或者是PLSQL过程、函数中

SQL查询工具主要包括:SQL*PLUS、ISQL*PLUS、PL/SQL

五、常用的SQL数据库

1.oracle是对象关系数据库管理系统(ORDBMS),提供关系数据库系统和面向对象数据库系统两者的功能。在数据库SQL/PLUS工具中用户可输入不同的SQL语句,该工具可把数据返回给用户,或者对数据库进行适当操作

2.MySQL是快速、多线程、多用户的SQL数据库服务器,它支持正规SQL查询语言和采用多种数据类型

七、数据库database design设计

1.数据库设计是规划结构化数据库中的数据对象及这些数据对象间关系的过程。数据库设计是指对于给定的应用环境,构造最优的数据库模式,建立数据库及应用系统,使之能够有效存储数据,满足各种用户的应用需求

2.数据库设计基本步骤:(1)需求分析阶段(2)概念结构设计阶段,通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型(3)逻辑设计阶段,将概念结构转换为一个DBMS所支持的数据模型,对其进行优化(4)数据库物理设计阶段,物理结构(包括存储结构与存储方法)(5)数据库实施阶段,利用数据语言、工具与宿主语言,根据逻辑设计与物理设计的结果建立数据库,编制与调试应用程序,组织数据入库(6)数据库运行与维护阶段

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值