Time of Update: 2018-07-24
皓月蒼狼 2017-11-27 23:17:37 在oracle中,資料表別名不能加as,如: select a.appname from appinfo a;--正確; select a.appname from appinfo as a;--錯誤 可能與oracle中的預存程序中的關鍵字as發生衝突 在預存程序中,select 某一欄位時,後面必須緊跟into,如果select整個記錄,利用遊標的話就另當別論了。 select
Time of Update: 2018-07-24
oracle的substr函數的用法 取得字串中指定起始位置和長度的字串 substr( string, start_position, [ length ] ) 如: substr('This is a test', 6, 2)
Time of Update: 2018-07-24
關於字元集的一些問題: 博主最近開始學習oracle啦,不得不說oracle的內容真的太廣了,學好它不僅僅是資料庫本身的問題,好多時候會牽扯各種作業系統,記得剛剛在redhat下開始安裝oracle的時候差不多鼓搗了一天啊。OK,言歸正傳,最近博主在測試一些簡單的SQL語句時發現一個問題: 哇哦,這是什麼鬼,不能識別我大天朝的語言嗎。嚇得我趕快從網上查了查原因,貌似牽扯字元集的原因。其實很簡答啦,僅僅是在安裝資料庫的時候字元設定預設語言沒有選對。
Time of Update: 2018-07-24
以前開發的時候用得比較多的是mysql和sql server,oracle用的比較少,用起來比較生疏,mysql和sql server用起來比較類似,就oracle的使用方式和他們不同,oracle在建立資料庫的時候要對應一個使用者,資料庫和使用者一般一一對應,mysql和sql server 直接通過create databse “資料庫名” 就可以直接建立資料庫了,而oracle建立一個資料庫需要以下三個步驟: 建立兩個資料庫的檔案 建立使用者與上面建立的檔案形成映射關係
Time of Update: 2018-07-24
Top-N,根據某一規則進行排序,然後取其前N行資料。 rownum:偽列,資料表中本身沒有這樣的列,是oracle資料庫為每個資料表加上的列,可以標識別行號,預設情況下,rownum按主索引來排序,若沒有主索引則自然排序。 對oracle進行分頁必須使用rownum: select employee_id,last_name,salaryfrom (select rownum rn,employee_id,last_name,salary from
Time of Update: 2018-07-24
利用 Maven 管理 Oracle JDBC 驅動依賴時發現,通過修改 pom.xml 檔案添加 Oracle JDBC 依賴總會提示 Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0 在 http://search.maven.org/ 上可以尋找到 Oracle JDBC 依賴 點擊版本號碼(10.2.0.4.0)可以看見 Maven 依賴的添加方法 但是照此方法修改工程 pom.xml
Time of Update: 2018-07-24
查詢一小時 select concat(to_char(sysdate,'yyyy-mm-dd ')||(to_char(sysdate,'hh24')-1),':00:00') start_time,concat(to_char(sysdate,'yyyy-mm-dd hh24'),':00:00') end_time from dual 結果: 查詢前一天 select
Time of Update: 2018-07-24
代碼中,插入到oracle資料庫,中文變亂碼。用pl/sql developer,卻沒事。 找來找去,又說調字元集,又說啥的,都不起作用。索性將心一橫:我這個代碼是直接執行的SQL語句,而oracle的中文字元集為GBK,而我們的程式字元集為UTF-8,那麼將SQL語句在執行前,先轉換成GBK如何。 string pathgbk = Utf8ToGBK(folder.PATH);//含中文的字串轉換成GBK string sql =
Time of Update: 2018-07-24
文章轉載自:https://www.thinksaas.cn/group/topic/98721/ 項目中會遇到這樣的情況,一次性要插入多條資料到資料庫中,下面就拿Data類來看看兩種插入方法: 方法一: Mybatis本身只支援逐條插入,比較笨的方法,就是遍曆一個List,迴圈中逐條插入,比如下面這段代碼 for(Data d : ListData) {dataMapper.insertSelective(d);}
Time of Update: 2018-07-24
create user cmsuser identified by "cmsuser"; SQL> create user uumcuser identified by "password"; User created. SQL> grant connect,dba to uumcuser; Grant succeeded. SQL> grant exp_full_database,imp_full_
Time of Update: 2018-07-24
sys 和 system 帳號有啥區別。一直以來懵懵懂懂,只想當然的認為就是許可權大小不一樣。 但是,它們都是管理員。 現在,我知道有一個區別了: 【sys】只能用sysdba身份登入(也許還有sysoper。),在用戶端和伺服器都可以 【system】在用戶端只能用normal身份登入;在伺服器,normal和sysdba都可以。
Time of Update: 2018-07-24
一、建立臨時空間 create temporary tablespace user_temp tempfile ‘E:\APP\SCOTT\ORADATA\ORCL\user_temp.dbf’ size 50m autoextend on next 50m maxsize 20480m extent management local; 二、建立資料資料表空間 create tablespace user_data logging
Time of Update: 2018-07-24
一、ORACLE的啟動和關閉 1、在單機環境下 要想啟動或關閉ORACLE系統必須首先切換到ORACLE使用者,如下 su - oracle a、啟動ORACLE系統 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup SVRMGR>quit b、關閉ORACLE系統 oracle>svrmgrl
Time of Update: 2018-07-24
組內排序 函數 row_number() over(partition by col1 order by col2)表示根據col1分組,在分組內部根據col2排序,而此Function Compute的值就表示每組內部排序後的順序編號(組內連續的唯一的)。 與rownum的區別在於:使用rownum進行排序的時候是先對結果集加入偽劣rownum然後再進行排序,而此函數在包含排序從句後是先排序再計算行號碼。 row_number()
Time of Update: 2018-07-24
從11gR2開始,Oracle RAC的架構有了比較大的變化,叢集層面相交於之前的版本有了比較大的變動,原來的rac架構基本上屬於cssd、crsd、evmd三大光禿禿的主幹進程,日誌數量較少,對於rac無法啟動原因,採用最原始的方法逐一查看各個進程的日誌也可找到無法啟動的原因。然而從11gR2之後,叢集層發生了比較大的變動,以下是$GRID_HOME/log/rac1/下的目錄情況: [grid@rac1 rac1]$ ls acfs
Time of Update: 2018-07-24
先介紹字元函數: 大小寫相關: 1. select lower('Hellow'), upper('heHHlo'), initcap('oello')from dual;--dual空表。 結果: hellow HEHHLO Oello 和大小寫無關: 1. SELECT trim('H' from 'HellowHH'), ltrim('HellowHH', 'H'),ltrim('HHellowHH', 'HH'), rtrim('HellowHH', 'H'
Time of Update: 2018-07-24
和mysql對比著看:http://blog.csdn.net/rainyspring4540/article/details/50231435 這裡是oracle10g的環境 資料庫結構如下: 如果我想將相同名字的成績顯示在同一行,有2中基本展示: 第一種展示(顯示在同一行的不同列上) 其sql如下: select name ,max(decode(type,'math',score,0)) as
Time of Update: 2018-07-24
單行函數 函數就是和Java語言之中的方法的功能是一樣的都是為了完成某些特定操作的功能支援。而現在oracle資料庫重也包含了大量的單行函數,這些函數掌握了之後可方斌啊的協助進行資料庫的相關開發 對於開發人員而言,最重要的就是sql文法和單行函數,可是oracle的單行函數的數量是非常多的, 文法: Function_name(列|運算式[參數1,參數2]) 單行函數主要分為以下幾種:
Time of Update: 2018-07-24
1.建立: CREATE SEQUENCE emp_sequence --序列名INCREMENT BY 1 --如果省略,則預設為1,如果負值,則代表序列的值是按照此步長遞減的。 START WITH 1 -- 從1開始計數 NOMAXVALUE -- 不設定最大值 NOCYCLE -- 一直累加,不迴圈 CACHE 20; --CACHE(緩衝)定義存放序列的記憶體塊的大小,預設為20。 2.修改:
Time of Update: 2018-07-24
在Oracle中sequence就是所謂的序號,每次取的時候它會自動增加,一般用在需要按序號排序的地方。 1、Create Sequence 你首先要有create sequence或者create any sequence許可權, CREATE SEQUENCE emp_sequence increment by 1 -- 每次加幾個 start with 1 -- 從1開始計數 NOMAXvalue --