Time of Update: 2018-07-26
commit (提交),rollback(復原) DECLARE dept_no NUMBER (2) := 70;BEGIN --開始事務 INSERT INTO dept VALUES (dept_no, '市場部', '北京'); --插入部門記錄 INSERT INTO dept VALUES (dept_no, '後勤部', '上海'); --插入相同編號的部門記錄
Time of Update: 2018-07-26
1 建立測試表 用sys使用者建立測試表 SQL> CREATE TABLE HR.ST (ID NUMBER, TIME DATE); Table created. SQL> INSERT INTO HR.ST SELECT ROWNUM, CREATED FROM DBA_OBJECTS; 50416 rows created. SQL> commit; Commit complete. 2 授權 SQL> grant
Time of Update: 2018-07-26
項目開發中將mysql開發的系統轉成oracle開發時,出現CLOB轉型的錯誤 拋出的異常 [org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver] - Resolving exception from handler [public com.waysoft.common.
Time of Update: 2018-07-26
csdn 標籤: oracle, .net, ado.net, FUNCTION, 預存程序 使用了遊標,返回列表,通過包定義類 SQLSERVER 中 做一個直接獲得返回列表的儲存 CREATE PROCEDURE [dbo].[test_get]ASSELECT RoleID, Description FROM test_tables ORDER BY Description
Time of Update: 2018-07-26
一個困擾我良久的問題,在今天早上8:41分時基本解決。 資料庫的資料量非常龐大,查詢速度極慢,建立索引後“=”搜尋速度問題解決,但是在搜尋的sql語句中大部分是用like,可是like '%XXX%'是不使用索引的,而like 'XXX%'則經過索引,求教曾經的老師、進階程式員也無用,在網站上搜尋、求助,最終鎖定兩種辦法:1.全文索引。2.搜尋引擎。
Time of Update: 2018-07-26
start mysql:service mysqld start (1) 以oracle身份登入資料庫,命令:su – oracle (2) 進入Sqlplus控制台,命令:sqlplus /nolog (3) 以系統管理員登入,命令:connect / as sysdba (4) 啟動資料庫,命令:startup (5) 如果是關閉資料庫,命令:shutdown immediate (6) 退出sqlplus控制台,命令:exitstar (7)
Time of Update: 2018-07-26
-- Start 說起 Oracle 分析函數,可以用很好很強大來形容。這項功能特別適用於各種統計查詢,這些查詢用通常的SQL很難實現,或者根本就無發實現。首先,我們從一個簡單的例子開始,來一步一步揭開它神秘的面紗,請看下面的SQL: CREATE TABLE EMPLOY( NAME VARCHAR2(10), --姓名 DEPT VARCHAR2(10), --部門 SALARY NUMBER --工資);INSERT
Time of Update: 2018-07-26
當你使用PL/SQL Developer刪除使用者時,經常會出現這樣的提示 “無法刪除當前串連的使用者” 解決方案我直接貼出 sql語句 /* 刪除當前串連使用者 */-- 1、首先切換到 SYSTEM 使用者-- 2、查詢使用者各進程相對應的 sid、serial#。 -- 注意:這裡的 username 必須大寫 SELECT sid,serial#,username FROM v$session WHERE username = '
Time of Update: 2018-07-26
轉自:http://tenn.iteye.com/blog/99339 在Oracle中,要按特定條件查詢前N條記錄,用個rownum就搞定了。 select * from emp where rownum <= 5 而且書上也告誡,不能對rownum用">",這也就意味著,如果你想用 select * from emp where rownum > 5
Time of Update: 2018-07-26
本例實現的是連接字串,並且去掉重複的項。 彙總函式實際上就是一個對象: [sql] view plain copy create or replace type distinct_concat_type as object ( --物件變數
Time of Update: 2018-07-26
資源回收筒: show recyclebin (命令列語句) 清空資源回收筒: purge recyclebin 資源回收筒還原已刪除表: flashback table table_name to before dorp 擷取系統時間: sysdate 平均值:avg 條件為真:where 1=1 條件為假:where 1=2分頁:rownum
Time of Update: 2018-07-26
SQL中的單記錄函數1.ASCII返回與指定的字元對應的十進位數;SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual;<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> A A ZERO SPACE--------- --
Time of Update: 2018-07-26
1、首先需要確認幾個事情,原資料庫的使用者名稱、密碼、資料表空間名還有使用者的角色。 2、匯出表中的資料。使用plsql的匯出表功能。 其實使用的是oracle/product/10.1.0/Db_1/bin/EXP.EXE。沒啥好說的,匯出dmp格式的檔案就行。 將產生的dmp檔案上傳到aix系統中。 ftp 11.11.11.11 put data.dmp 3、連結到linux系統的oracle管理頁面:http://123.456
Time of Update: 2018-07-26
-一維數組: --巢狀表格 --尺寸沒有限制。 --本質上是無序的 --VARRAY --尺寸必須固定,所有的執行個體尺寸相同。 --在過程化語言中可以作為有序數組進行檢索但在Oracle內部看成單個不能分割的單元。 --儲存效率高。 --多維陣列 --利用record 和record of --建立測試表 drop table t_test_1; create table t_test_1( pid number(10),
Time of Update: 2018-07-26
1.為啥要用同義字: 同義字,顧名思義就是兩個詞的意思一樣,可以互相替換.那它的作用有哪些呢: a一個最明顯的目的就是簡化sql.如果某個資料庫物件的名字太長了,可以建立一個短一點的同義字.就相當於是縮寫唄. b.另外一個目的是隱藏一些對象的資訊.比如尋找另一個 schema中的某個表,需要在表名前加schema名做為首碼.如果建立一個同義字就可以隱藏schema資訊. 2.怎麼建立同義字. 文法:CREATE [OR
Time of Update: 2018-07-26
眾所周知,mysql innodb儲存引擎與oracle非常相似,支援事務,row-locking,經過實際測試,innodb與oracle一個比較大的差異點為,在此測試案例下,相同資料,innodb單行儲存長度大概是oracle單行儲存長度的1.8倍。測試的表,常見的各種類型都有,number,varchar2,date–首先在oracle中做測試 , 在oracle資料庫中此表單行長度平均為458位元組 09:49:45 danchen@ test_oracle>
Time of Update: 2018-07-26
表的串連是指在一個SQL語句中通過表與表之間的關連,從一個或多個表中檢索相關的資料,大體上表與表之間的串連主要可分四種,分別為相等串連,外串連,不等串連和自串連,本文將主要從以下幾個典型的例子來分析Oracle表的四種不同串連方式: 1. 相等串連 通過兩個表具有相同意義的列,可以建立相等串連條件。只有串連列上在兩個表中都出現且值相等的行才會出現在查詢結果中。 例 查詢員工資訊以及對應的員工所在的部門資訊: SELECT * FROM
Time of Update: 2018-07-26
-- Start Oracle 支援如下幾個集合操作符。 UNION 用來求兩個集合的並集,並去掉重複值UNION ALL 用來求兩個集合的並集INTERSECT 用來求兩個集合的交集,並去掉重複值MINUS 用來求在第一個集合中存在,而在第二個集合中不存在的記錄,並去掉重複值 下面我們先來準備測試資料。 CREATE TABLE TEST_LEFT( COL CHAR);INSERT INTO
Time of Update: 2018-07-26
-- Start NUMBER CREATE TABLE TEST( -- 文法:NUMBER [ (p [, s]) ] -- p(precision) 表示精度,精度是指從左邊第一個非0數字開始到右邊最後一個非0數字結束的所有數位個數 -- p 可以是 1 到 38 的任一數字 -- s(scale) 表示標度,標度是指小數位的個數,s 可以是 -84 到 127 的任一數字 -- 如果一個數字超過了定義的精度,Oracle 會報錯 --
Time of Update: 2018-07-26
-- Start 在資料庫中,每一行都有一個地址,我們可以查詢偽列 ROWID 來得到這個值。 CREATE TABLE TEST(NAME VARCHAR(10));INSERT INTO TEST VALUES ('TEST');SELECT ROWID, NAME FROM TEST;-- 結果ROWID NAMEAAAFCoAAEAAAASuAAATEST 這個值看上去是一個字串,但事實上,它的類型是