Time of Update: 2018-12-06
預定義角色:1.CONNECT角色: 授於終端使用者的典型最基本的權利ALTER SESSION --修改會話CREATE CLUSTER --建立聚簇CREATE DATABASE LINK --建立資料庫連結CREATE SEQUENCE --建立序列CREATE SESSION --建立會話CREATE SYNONYM --建立同義字CREATE VIEW --建立視圖2.RESOURCE角色: 是授予開發人員的CREATE CLUSTER --建立聚簇CREATE
Time of Update: 2018-12-06
含義解釋: 1、rownum是oracle系統順序分配為從查詢返回的行的編號,返回的第一行分配的是1,第二行是2, 依此類推,這個偽欄位可以用於限制查詢返回的總行數。2、rownum不能以任何基表的名稱作為首碼。 使用方法: 現有一個商品銷售表sale,表結構為:month char(6) --月份sell number(10,2) --月銷售金額create table sale (month char(6),sell number);insert into
Time of Update: 2018-12-06
# alter user soctt account lock; // 把 scott使用者鎖定 # alter user scott account unlock; //把scott使用者解鎖 # alter user scott identified by scott //修改scott使用者密碼為
Time of Update: 2018-12-06
sqlserver裡的isnull()oracle裡nvl()NVL(Expr1,Expr2)如果Expr1為NULL,返回Expr2的值,否則返回Expr1的值NVL2(Expr1,Expr2,Expr3)如果Expr1不為NULL,返回Expr2的值,否則返回Expr3的值NULLIF(Expr1,Expr2)如果Expr1和Expr2的值相等,返回NULL,否則返回Expr1的值sqlserver裡的case when else的用法: 表名 = CASE WHEN a.colorder
Time of Update: 2018-12-06
希望象Sqlserver中一樣能清晰的分析主外鍵表和欄位資訊,用一個SQL語句寫出主外鍵表的欄位一一對應關係,在網上找了半天,有能列出主外鍵表和欄位的,但欄位不是一一對應好的,所以自己寫了一個。 Oracle中擷取主外鍵表名欄位名約束名Code highlighting produced by Actipro CodeHighlighter
Time of Update: 2018-12-06
我們在實際工作中經常會有後台oracle資料庫環境遷移的時候,不知道是否存在問題:1、開發環境遷移到實際環境中,不知道是否遺漏什麼東西?2、搭建測試環境,不知道與真實的環境是否一致?3、為使用者做資料移轉,從一個庫遷移到另一個庫中,不知道是否操作完整....我在網上發現了一個Oracle使用者一致性比較的工具,很簡單,也很好用,能夠將兩個庫的表、視圖、觸發器、預存程序、包、同義字等等對象進行比較,然後產生比較報告,會告訴源和目的之間有什麼區別(包括對錶和視圖的資料列進行比較),最絕的是還會產生一
Time of Update: 2018-12-06
作者:gnuhpc 出處:http://www.cnblogs.com/gnuhpc/TLS,1 p.Mrs. Doughty Quogue, Long Island 16 September 1962, Sunday My dear: Well, here we are — but not here. You at St. Tim's, Sister in Princeton, and me in Quogue, and another brand new
Time of Update: 2018-12-06
本來打算主鍵ID用觸發器產生,因為程式只需要一次IO就能插入一條資料。圖在下面,這裡assigned不能改為native,從配置中看,是程式來產生ID,但實際oracle接受到插入訊息後,觸發器自動用序列替換了ID,因此遇到一個問題,就是程式不能擷取到剛才插入的實體的主鍵ID,於是改為設定檔中指定序列建立ID,為了看它產生的sql和串連資料庫的IO次數,我用NHibernateProfiler和sql server
Time of Update: 2018-12-06
這個問題斷斷續續困擾了我一段時間,在網上搜遍了,沒搜到誰真正說解決了這個問題。項目裡用spring.net封裝的Nhibernate操作oracle資料庫一直沒出現類試問題,但這次用純Nhibernate連oracle老是報錯,最後解決了才發現是NHibernate版本問題引起的(這個報錯確實很迷惑人,感覺像hbm.xml引起的問題)。用純的NHibernate,當時為了快點測試自己想做的程式,就下了別人的DEMO直接用,雖然現在好像出3.0版本了,DEMO是2.0.0.4000版本的,我項目裡
Time of Update: 2018-12-06
下班了,寫兩篇文章都回家了:)以前也用oracle,都是別人弄好了,我直接用,就只感覺預存程序,sql文法比用MSSQL稍微彆扭點,其他配置很少接觸,這次從用pd建表到弄好資料庫讓大家用,都大體弄了偏,瞭解了更多東西,把部分現在記下來的寫下來做個備忘。PD裡是可以直接設定資料表空間存放位置的,如表存放的資料表空間和lob對象單獨存放資料表空間如:主鍵存放資料表空間設定如下:設定後,用PD產生SQL代碼,則會自動產生資料表空間代碼。oracle中預存程序的單步調試和直接產生結果,以前認為很麻煩,因
Time of Update: 2018-12-06
我認為任何業務系統的開發,不管b/s還是c/s,核心精力都應該是放在對邏輯和對高效能,安全性的幾H的處理,底層和系統結構應該由架構師考慮好形成統一風格,前端應該由美工來完善,因此我覺得一個節約人力又要把系統做很好,一方面前期把系統結構考慮好,另一方面用codesmith類試的產生整個系統。尤其像CMS後台這種,結構固定,如果還用EXT來做,前端展現也固定,可以快速產生出來,再少量人對細節進行處理,前台或者面向終端使用者的,也基本可以產生基礎結構,並具有基礎功能。之前看到過部落格園有人發了自己的快
Time of Update: 2018-12-06
一般只是作為用戶端訪問Oracle,並不需要安裝龐大的Oracle。有時候經常忘記怎麼配置精簡版Oracle,這篇文章做個記錄備份。可以從http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html 下載適合自己系統的用戶端,一般幾十M,下載Basic版本。下載後解壓到一個目錄後,它可以作為Oracle用戶端了,但是需要做一定配置,比如我放到D:\Oracle目錄,設定環境變數配置如下:O
Time of Update: 2018-12-06
免安裝Oracle用戶端使用PL/SQL串連Oracle 大家都知道,用PL/SQL串連Oracle,是需要安裝Oracle用戶端軟體的。有沒要想過不安裝Oracle用戶端直接連接Oracle呢? 利用Oracle 提供的Instant Client Package 只需要在Oracle下載一個叫Instant Client
Time of Update: 2018-12-06
參考:http://blog.csdn.net/llxsharp/article/details/3888030http://blog.csdn.net/yxm1014/article/details/5225080 安裝oracle 9i後,居然把剛剛更改的資料庫管理員密碼給忘了,又不重新安裝,太麻煩了,試了好久,終於修改成功了。1、運行到C盤根目錄2、輸入:SET ORACLE_SID = 你的SID名稱3、輸入:sqlplus/nolog4、輸入:connect/as
Time of Update: 2018-12-06
使用MySQL Migration Toolkit快速將Oracle資料匯入MySQL 近來筆者有項目需要將原有的Oracle資料庫中的資料匯入到MySQL中,經過試用發現MySQL GUI Tools中的MySQL Migration Toolkit可以非常方便快捷的將Oracle資料導到MySQL中,特別是對CLOB、BLOB類型的資料也有非常好的支援。下面筆者來介紹一下MySQL Migration
Time of Update: 2018-12-06
這是個虛擬表,你在操作大多數Oracle對象的時候都可以使用這個表,比如sequence,sysdate等等。 比如select sysdate from dual select seq1.nextval from dual 等等,一般也就是用來做這個事情的 1. dual 是由 sql.bsq 建立的。每個database 在建立的時候, sql.bsq 都需要run 一次的。所以每個database 都會有dual table 的。2. DUAL 的owner 是誰? -- SYS
Time of Update: 2018-12-06
Oracle9i引入了MERGE命令,你能夠在一個SQL語句中對一個表同時執行inserts和updates操作. MERGE命令從一個或多個資料來源中選擇行來updating或inserting到一個或多個表.在Oracle
Time of Update: 2018-12-06
還有些許遺漏,實驗理論上並不十分嚴密!1、 交易隔離等級設定Oracle有兩種交易隔離等級,分別是Connection.TRANSACTION_READ_COMMITTED(讀已提交)和Connection.TRANSACTION_SERIALIZABLE(串列讀)。如果設定隔離等級出錯,會拋異常如下java.sql.SQLException: 僅 READ_COMMITTED 和 SERIALIZABLE
Time of Update: 2018-12-06
問題描述: 將Oracle資料庫中所有使用者表的表結構匯出,並儲存到Excel表中,儲存資訊如所示:SELECT A.TABLE_NAME,A.COMMENTS,B.COLUMN_NAME,B.COMMENTS FROM USER_TAB_COMMENTS a,USER_COL_COMMENTS b WHERE a.table_name =
Time of Update: 2018-12-06
如何使用PLSQL Developer從oracle資料庫 匯入匯出資料 用pl/sql developer匯出表的資料時有三種方式:Oracle Export,Sql Insert,pl/sql developer 只有“Oracle Export”方式匯出再匯入後,表結構和索引結構沒有發生變化,另兩種方式都改變了索引類型。另外 Sql Insert的那個可以導成sql,可以用文字編輯器開啟。 pl/sql developer 也可以匯出,但文字編輯器不能開啟。