oracle如何查询视图连接的数据库

oracle如何查询视图连接的数据库,第1张

Qt之界面数据存储与获取(userData)

向busybox中添加自己的applet

oracle内存分析

程序中实现两个DataTable的Left Join效果(修改了,网上第二个DataTable为空,所处的异常)

CompletionService 与 ExecutorService 获取任务执行结果时的区别

CompletionService 和ExecutorService的区别和用法

Java数据库开发

Python安装jpype调用java,安装jaydebeapi通过jdbc连接数据库

7. 进行图片的数据补全和增强(随机亮度,随机饱和度,随机翻转) Image.open(进行图片的读入) 2.ImageEnhance.Brightness(亮度变化) 3.ImageEnhance.Contrast(饱和度变化) 4.enhance_image.transpose(图片随机翻转) 5.enhance_image.save(进行图片保存)

数据挖掘 Apriori Algorithm python实现

Thinkphp5.0 控制器向视图view赋值

oracle 查询 函数练习

Hibernate的批量查询——原生sql查询

二十二:视图之add_url_rule和app.route

SQL语句创建数据库以及一些查询练习

Elasticsearch 使用:创建、插入、查询、更新、删除

模糊查询中Like的使用

mvc4中使用部分视图局部刷新实例

oracle(8)视图和查询数据库对象方法

leetcode877

bootstrap-table表格导出

servlet模板

[leetcode-609-Find Duplicate File in System]

SpringBoot 整合Mybatis *** 作数据库

python基础教程总结12——数据库

day37 02-Hibernate二级缓存:二级缓存的散装数据

Mysql进入数据库

WPF 视图导航

图形学思考 - 聊聊透视图投射矩阵perspective projective matrix

sql日期查询

ABAP-Eclipse ADT中创建ABAP CDS视图

技术小哥用手机实现激光笔,女友直呼:太酷了!

结婚登记人数创36年新低,结婚率下降原因是?

广告合作

发信联系

oracle(8)视图和查询数据库对象方法

扫码查看

视图

学习APP开发,接单挣钱!

视图 view

视图是数据库的对象之一。 视图也叫做虚表,既虚拟表,本质是对应一条select 语句,

select语句的结果集赋予一个名字就是视图的名字。

作用:

1.可以简化复杂的查询

2.可以限制数据的访问,对基表的其他数据起到安全和保密的作用。

创建一个 表create table emp(

empno number(6), name char(10), id number(4), deptno number(10), job varchar2(10) );

*创建视图:create view emp_v as

创建视图时,create对应的表叫做基表。* 查询视图select *from emp_v 根据查询所的方式可分为三种视图:1.简单视图:根据单表建立的,且不包含任何函数运算,表达式和分组,既单表的子集。2.复杂视图:根据单表建立,包含有单行函数/表达式/分组的视图。3.连接视图:基于多表建立的视图。*删除视图drop view emp_v

*简单视图可以进行DML *** 作,但是复杂视图不允许DML *** 作。

修改视图:视图的结构取决于对应的子查询,所以修改视图即替换对应

的子查询。REPLACE

CREATE OR REPLACE VIEW V_EMP_J

AS

SELECT EMPNO,ENAME,SAL

FROM EMP_XIAOJIE

SELECT * FROM V_EMP_J

对视图的不当DML *** 作会污染基表数据:

对简单视图进行DML *** 作后,视图对基表做对应的 *** 作,但是影响的数据对应视图来说

是不可见的,就是对基表数据的污染。

为了避免视图对基表产生数据的污染。我们可以对视图添加检查选项要求(检查约束)

使其对视图进行DML时 *** 作时检查视图时 *** 作后是否对 *** 作的数据可见,如果不可见

则不允许 *** 作。

*简单视图可以进行DML *** 作,但是复杂视图不允许DML *** 作。

视图本身是不包含数据的,只是基表的逻辑映射,所以

对视图执行DML *** 作时,实际上 *** 作的是基表。

对视图进行DML *** 作,实际上是对基表进行DML *** 作,

如果不去约束,我们对视图不可视进行DML *** 作会对

基表的数据产生污染。

对视图进行DML *** 作基本原则:

*简单视图可以进行DML *** 作,但是有以下情况除外,

基表中定义了非空列,但是简单视图对应的 SELECT

语句没有包含这个非空列,导致非空列对于视图不可视,

这时无法对视图进行 INSERT *** 作。

*复杂视图不允许DML *** 作

*DML *** 作不能违反基表的约束条件。

创建具有 CHECK OPTION 的约束视图。

CREATE OR REPLACE VIEW V_EMP_J

AS

SELECT EMPNO,ENAME,SAL

FROM EMP_XIAOJIE

WHERE SAL<3000

WITH CHECK OPTION--添加约束后无法对基表进行数据污染。

SELECT * FROM V_EMP_J

创建具有 READ ONLY 约束的视图。

对简单进行DML *** 作是合法的但是不安全,如果没有在视图进行DML

*** 作的必要的话,要在建立视图时声明只读来避免这种情况,包含

基表数据不会被非法的修改。

无法对只读视图执行DML *** 作。

CREATE OR REPLACE VIEW V_EMP_J

AS

SELECT EMPNO,ENAME,SAL

FROM EMP_XIAOJIE

WHERE SAL<3000

WITH READ ONLY--用来只读

数据字典:

数据字典是一系列的表,这些表的数据由数据库自行维护,记录清单清单信息。

1.在数据字典 user_objects 中查询所有视图:

SELECT object_name FROM user_objects

where object_type='VIEW'--查找所有视图

view:视图 table:表 sequence:序列 index:索引

2.在数据字典 USER_VIEWS 查询所有的指定视图:

3.在数据字典 user_updatable_columns 中查询视图:

SELECT COLUMN_NAME,INSERTABLE,UPDATABLE,DELETABLE --看 *** 作权限

FROM USER_UPDATABLE_COLUMNS

WHERE TABLE_NAME='V_EMP_J'

查询数据库当前进程的连接数

select count(*) from v$process

查看数据库当前会话的连接数

elect count(*) from v$session

查看数据库的并发连接数

select count(*) from v$session where status= ACTIVE

查看当前数据库建立的会话情况

select sid serial# username program machine status from v$session

查询数据库允许的最大连接数

select value from v$parameter where name = processes

或者命令 show parameter processes

修改数据库允许的最大连接数

alter system set processes = scope = spfile

(需要重启数据库才能实现连接数的修改)

重启数据库

SQL>shutdown immediate

SQL>startup

查看当前有哪些用户正在使用数据

SQL>select osuser a username cpu_time/executions/ || s sql_fulltext machine

SQL>from v$session a v$sqlarea b

SQL>where a sql_address = b address

SQL>order by cpu_time/executions desc

备注 UNIX 个用户session对应一个 *** 作系统process 而Windows体现在线程

启动oracle

su oracle

SQL>sqlplus system/pwd as sysdba     //进入sql

SQL>startup                                      //启动数据库

SQL>lsnrctl start                               //启动监听

sqlplus /as sysdba

SQL>shutdown immediate  //关闭数据库

SQL>startup mount

lishixinzhi/Article/program/Oracle/201311/18867


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10811937.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存