文档章节

数据库初探

f
 fang_faye
发布于 2017/08/07 18:57
字数 950
阅读 7
收藏 0

今天翻了下本科用的数据库教材,猛然发现教材这么牛逼!!现在用的比较多的数据库查询优化技术、并发控制、数据库恢复技术、存储过程等都被这本书涵盖了,只是当初这是老师就提了一下的东西,大四的时候我还以为数据库主要的就是会sql语句就够了。。。。没文化太可怕。。。

不过数据库技术这么几年过去了,并没有很大的变化。。并不像开发语言似的,时不时出来个框架,不懂就落伍了~但数据库的基础,深层的东西很重要!很重要!很重要!!

从今天开始,重新啃教材。。(附小笔记)

1、数据库安全性

数据库安全性主要关注的是DBMS的存取控制机制,最重要的一点就是确保只授权给有资格的用户访问数据库的权限,同时令所有未被授权的人员无法接近数据。这就涉及到权限的授予和回收了。

授权语句:

GRANT SELECT ON TABLE Student TO U1;(把查询Student表的权限授给用户U1)

回收语句:

REVOKE SELECT ON TABLE Student FROM U1;(从用户U1那里收回查询Student表的权限)

2、数据库完整性

实体完整性:在创建表时用PRIMARY KEY定义

参照完整性:在创建表时用FOREIGN KEY定义

任何关系型数据库都应该支持实体完整性和参照完整性,这是关系模型所要求的。

用户定义的完整性:针对某一具体应用的数据必须满足的语义要求(在创建表定义属性的同时根据要求,定义约束条件包括:NOT NULL、UNIQUE、CHECK)。

触发器:触发器是一种用来保障参照完整性的特殊的存储过程,它维护不同表中数据间关系的有关规则。当对指定的表进行某种特定操作(如:Insert,Delete或Update)时,触发器产生作用。触发器可以调用存储过程。(类似于约束,但比约束灵活)

3、数据库编程

游标:游标是系统为用户开设的数据缓存区,每个游标都有自己名字,存放SQL执行结果。能够便利所有的执行结果,但是一次只能访问一行。游标的常见作用是存放查询结果,如果需要经常查询一个记录集,就可以创建一个游标,比每次都去查询数据库快得多。

存储过程:存储过程是由PL/SQL语句书写的过程,这个过程经编译和优化后存储数据库服务器中。存储过程有以下优点:

1、运行效率高。因为不像SQL语句那样在请求的时候才进行语法分析等操作,存储过程在创建时就完成了这些操作,然后在第一次被调用时就驻留在内存中,所以以后每次执行效率都相当快。

2、降低了客户机和服务器的通信量。通信时只需要发出存储过程名称就能够得到结果,而不需要发送大量sql语句。

3、保证数据库安全性,方便管理。可以设置用户可以通过存储过程来访问数据,不能通过普通的sql语句访问,这样有利于企业的集中管理控制,及运维。

4、模块化程序设计。只需要创建一次存储过程,在使用时便能够独立于程序对存储过程进行修改。

(附:查询当前数据库的用户名语句:)

 

© 著作权归作者所有

共有 人打赏支持
f
粉丝 2
博文 56
码字总数 15672
作品 0
崇明
其他
【HTML5初探之本地存储】如果没有数据库。。。

导航 【初探HTML5之使用新标签布局】用html5布局我的博客页! 【HTML5初探之form标签】解放表单验证、增加文件上传、集成拖放 【HTML5初探之绘制图像(上)】看我canvas元素引领下一代web页面...

范大脚脚
2017/12/07
0
0
【HTML5初探之Web Workers】网页也能多线程

导航 【初探HTML5之使用新标签布局】用html5布局我的博客页! 【HTML5初探之form标签】解放表单验证、增加文件上传、集成拖放 【HTML5初探之绘制图像(上)】看我canvas元素引领下一代web页面...

范大脚脚
2017/11/09
0
0
【HTML5初探之Geolocation API】让我们获取女神的地址

导航 【初探HTML5之使用新标签布局】用html5布局我的博客页! 【HTML5初探之form标签】解放表单验证、增加文件上传、集成拖放 【HTML5初探之绘制图像(上)】看我canvas元素引领下一代web页面...

范大脚脚
2017/12/14
0
0
干货来了!2016年DevExpress资源汇总(更新、文档)

在2016年,著名软件界面解决方案专家DevExpress进行了重大升级,EVGET围绕版本升级推出了一系列干货资源,现将2016年所有Dev资源使用教程汇总于此,欢迎收藏转发点赞哦~ DevExpress WPF入门指...

Miss_Hello_World
2016/11/25
36
0
【HTML5初探之离线应用】如何打造零请求、无流量的网站?

导航 【初探HTML5之使用新标签布局】用html5布局我的博客页! 【HTML5初探之form标签】解放表单验证、增加文件上传、集成拖放 【HTML5初探之绘制图像(上)】看我canvas元素引领下一代web页面...

范大脚脚
2017/12/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

docker update:更新一个或多个容器的配置

更新容器的配置 docker update:更新一个或多个容器的配置。 具体内容请访问:https://docs.docker.com/engine/reference/commandline/update/#options 语法:docker update [OPTIONS] CONTA...

lwenhao
53分钟前
1
0
unload事件

unload事件不触发的原因分析 1.代码位置不对,应该优先加载,不能放到回调函数中 2.浏览器不支持 3.最可能的原因,unload事件中触发的函数是一个异步执行的函数,浏览器是不允许在窗口关闭之后在...

狮子狗
今天
1
0
DbForge Schema Compare for MySQL入门教程:如何连接到数据库

【dbForge Schema Compare for MySQL下载】 要创建连接: 1. 在“Connection” 工具栏上单击“New Connection”按钮 。 2. 在“Host” 框中输入主机名。 3. 在“Port” 框中输入端口信息。默...

Miss_Hello_World
今天
1
0
spring中事务的应用

spring中事务管理的两种方式 编程式事务使用TransactionTemplate或者直接使用底层的PlatformTransactionManager。对于编程式事务管理,spring推荐使用TransactionTemplate。 声明式事务是建立...

狂奔的熊二
今天
0
0
公众号关联微信小程序

公众号关联小程序发送关联通知,对于推广小程序有着很大的帮助。所以问题来了,怎么做到在公众号关联小程序发送关联通知呢? 一:开发中遇到的问题 之前在开发过程中发现,公众号已经关联小程...

Code辉
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部