oracle資料庫 檢視相關的語句
建立檢視:
create or replace force view view_owners
as
select * from T_OWNERS
刪除檢視語法:
drop view view_owners
建立檢視 :業主型別為 1 的業主資訊
create or replace view view_owners
as
select * from t_Owners where ownertypeid = 1
--利用該檢視進行查詢
select * from view_owners where ownertypeid = 1
--對簡單檢視還可以進行增刪改的操作
--利用該檢視進行查詢update T_owners set name = '范冰冰' where id = 1
select * from view_owners where ownertypeid = 1
--對錶進行查詢
select * from T_Owners where ownertypeid = 1
--帶檢查約束的檢視
--只讀檢視的建立和使用--根據地址表(T_ADDRESS)建立檢視 VIEW_ADDRESS2 ,內容為區域 ID 為 2 的記錄。 create or replace view view_address as select * from T_ADDRESS where areaid = 2 with check option --執行不成功的語句 帶約束的檢視,不可以修改條件,修改其他的屬性可以 update view_address set areaid = 3 where id = 4
--將上邊的檢視修改為只讀檢視
create or replace view view_address2
as
select * from T_address where areaid = 2
with read only
--查詢該檢視
select * from view_address2
--修改後會出現錯誤
update view_address2 set name = '區域' where id = 3
--建立帶錯誤的檢視
create force view view_temp
as
select * from T_temp
--複雜檢視的建立和使用
--查詢顯示業主編號,業主名稱,業主型別名稱 create or replace view view_owners as select ot.id 業主編號,ot.name 業主名稱,ow.name 業主型別 from T_Owners ot ,t_Ownertype ow where ot.ownertypeid = ow.id select * from view_owners --進行資料的修改 update view_owners set 業主名稱 = '範冰' where 業主編號 = 1--可以修改成功 --在進行修改業主型別 update view_owners set 業主型別='居民' where 業主編號 = 1 ---建立檢視,按年月統計水費金額, create or replace view view_account as select year 年份 ,month 月份 ,sum(money) 金額 from T_account group by year ,month order by year , month --查詢 select * from T_account
--物化檢視
--查詢地址 ID,地址名稱和所屬區域名稱
create materialized view view_address
as
select ad.id,ad.name 地址 ,ar.name 區域 from T_address ad ,T_area ar
where ad.areaid = ar.id
--------------------------------
create materialized view view_address
as
select id,name,(select name from T_area where id = areaid) from T_address
---------------------------------------------
select * from view_address
--向表中新增一條記錄
select * from T_address
insert into T_address values (9,'巨集福苑小區',1,1)
--沒有進行重新整理,預設手動重新整理
begin
DBMS_MVIEW.refresh('view_ADDRESS','C');
end;
--建立自動重新整理的物化檢視
create materialized view view_address2
refresh
on commit
as
select ad.id,ad.name adname,ar.name arname
from t_address ad ,t_area ar
where ad.areaid = ar.id
select * from view_address2
--建立不生成資料的物化檢視
create materialized view view_address3
build deferred
refresh
on commit
as
select ad.id,ad.name 地址, ar.name 區域
from t_address ad ,t_area ar
where ad.areaid = ar.id
--查詢該檢視
select * from view_address3
---執行下列語句生成資料
begin
DBMS_MVIEW.refresh('view_ADDRESS3','C');
end;
--建立增量重新整理的物化檢視
--如果建立增量重新整理的物化檢視,必須首先建立物化檢視日誌
create materialized view log on t_address with rowid;
create materialized view log on t_area with rowid
--建立的物化檢視日誌名稱為 MLOG$_表名稱
--建立物化檢視
create materialized view view_address4
refresh fast
as
select ad.rowid adrowid ,ar.rowid arrowid ,ad.id,ad.name 地址, ar.name 區域
from t_address ad ,t_area ar
where ad.areaid = ar.id
--查詢物化檢視
select * from view_address4
--插入資料
select * from T_address
insert into t_address values (10,'居寧花園',2,2)
commit;
delete * from t_address where id = 9
--手動重新整理
begin
Dbms_Mview.refresh('view_address4','C');
end;
相關推薦
oracle資料庫 檢視相關的語句
建立檢視: create or replace force view view_owners as select * from T_OWNERS刪除檢視語法: drop view view_owners建立檢視 :業主型別為 1 的業主資訊 create or replac
Oracle資料庫的相關操作
1 連線時報錯 TNS-12560: TNS: 協議介面卡錯誤 解決步驟問題: 開啟服務: 2 連線oracle 在cmd下輸入sqlplus, 然後輸入賬號和密碼,進入 3 新增使用者 CREATE US
【oracle 流程控制】oracle資料庫流程控制語句控制PL/SQL語句
1、條件語句 if else判斷 #宣告變數 declare employee_sa number; begin select count(*) into employee_sa from employees where salary>6000; if employee_sa
Oracle資料庫 基礎SQL語句練習
一、說明 第一次使用Oracle,想做一些練習,熟悉一些oracle。 表:使用的是scott使用者,預設的表 具體表講解,可以參考該文件:https://www.cnblogs.com/xjcheng1/p/7220159.html 二、基礎練習 第一、查詢工資在0-1000,1000
ORACLE資料庫檢視執行計劃
TKPROF: Release 10.2.0.1.0 - Production on 星期三 5月 23 16:56:41 2012Copyright (c) 1982, 2005, Oracle. All rights reserved.Trace file: D:\ORACLE\PRODUCT\1
Oracle資料庫的常用語句
/*CREATE TABLE STUDENT (SNO VARCHAR(3) NOT NULL, SNAME VARCHAR(4) NOT NULL, SSEX VARCHAR(2) NOT NULL, SBIRTHDAY DATE, CLASS NUMBER
Oracle資料庫的常用語句練習
1.選擇部門中30的僱員 select * from emp where deptno=30; 2.找出佣金高於薪金的僱員 select * from emp where comm>sal; 3.找出佣金高於薪金60%的僱員 select * from e
Oracle 資料庫常用SQL語句(1)
一、資料定義語句 CREATE:建立表或其它物件 create database test; //建立test資料庫 create table student(name char(20),sex char ,age int ,info varchar(100)); //建立表 ALTER:修改表或其
oracle資料庫常用SQL語句以及角色傳遞
一、本地oracle11g資料庫以下使用者密碼統一修改為:sysorcl; 本地使用DBA許可權遠端連線ORACLE資料庫 以sys使用者登陸oracle,執行select * from V_$PW
oracle資料庫使用sql語句獲取一段連續的日期
oracle資料庫,使用sql語句獲取一段連續的日期: SELECT TO_CHAR ( TO_DATE ('2018-11-08', 'yyyy-mm-dd') + ROWNUM - 1, 'yyyy-mm-dd' ) AS sjsj, ROWNUM
oracle資料庫mybatis常用語句寫法
1、mybatis中對年月日時間進行篩選資料時查詢不到資料 select sum(SJL) AS RESULTCOUNT from TJ_SJYDATA where trunc(TJ_DATE) = TO_DATE(#tj_date#,'YYYY/MM/DD') 2、進行分組查詢時
Oracle 資料庫檢視建立使用及探索(一)
工具:Navicat PremiumOracle 11g檢視基本概念知識儲備:常見資料庫物件表 :基本的資料儲存集合,由行和列組成檢視 :從表(一個或多個)中抽取出的邏輯上相關的資料集合序列:提供有規律的資料索引:提高查詢的效率檢視(WHAT)檢視是一種虛表。檢視建立在已有表
[收集]Oracle效能監控-相關語句-第一篇
希望整理一個監控oracle效能的常用sql集錦,希望大家不斷更加:1. 監控事例的等待 select event,sum(decode(wait_Time,0,0,1)) "Prev", sum(decode(wait_Time,0,1,0)) "Curr",count(*) "Tot"
oracle資料庫檢視和解除死鎖
檢視死鎖: select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo.locked_mode, SESS.machine from v$locked_object lo, dba_o
oracle資料庫拼接sql語句字串問題
近日遇到一個問題,在使用儲存過程拼接動態語句時,傳輸引數一直提示無效識別符號,研究發現拼接sql語句的時候,作為字串引數的變數要加' ',具體程式碼如下:declare vc_sql varchar2(20000); v_table varchar2(20
oracle資料庫SQL查詢語句練習一
1、 選擇部門30中的所有員工。 2、 列出所有辦事員(CLERK)的姓名,編號和部門編號。 3、 找出佣金高於薪金的員工。 4、 找出佣金高於薪金的60%的員工。 5、 找出部門10中所有經理(MANAGER)和部門20中所有辦事員(CLERK)的詳
Oracle資料庫檢視編碼和修改編碼
首先檢視oracle資料庫的編碼 SQL> select * from nls_database_parameters where parameter ='NLS_CHARACTERSET'; PARAMETER -------------------- VALUE
oracle建立表相關語句
--建立使用者 create user han identified by han default tablespace use Temporary TABLESPACE Temp; grant connect,resource,dba to han; //授予使用者han開發人員的權利 -------
教你如何在Oracle官網免登陸下載oracle資料庫以及相關工具
轉載地址:http://blog.csdn.net/wanghaiping1993/article/details/52287722Oracle資料庫官網下載地址:http://www.oracle.com網的下載介面如下,你可以選擇不同的oracel版本下載,我以下載ora
Oracle資料庫檢視
Oracle中有四種檢視: 關係檢視 內嵌檢視 物件檢視 物化檢視 需要的表和資料資訊: create table employees(employee_id number primary key , first_name varchar2(4), last_name varchar2(4), provi