Oracle常用知识
文章目錄
- Oracle常用知識
- 創建臨時表空間
- 創建數據表空間
- 創建用戶并指定表空間
- 修改用戶默認表空間
- 查詢用戶以及用戶對應的表空間
- 查詢當前用戶的所有表及表空間
- 為用戶授予權限
- 查看當前用戶權限
- 當在oracle一個用戶創建有關另一個用戶的視圖時提示權限不足
- 查看表空間存儲位置
- 默認用戶名及密碼
- 查看用戶列表
- 修改用戶名及密碼
- 查詢數據庫實例
- 獲取各類時間
- 分條件計數COUNT
- union和union all
- 在查詢結果中增加一列不存在的字段
- Oracle數據庫主鍵自增
- 導入數據庫dmp文件的幾種方式
- Oracle數據庫字符集
- 查詢操作日志
- 插入數據中文亂碼 顯示問號???
- Oracle數據庫的導入和導出dmp文件
- 更新日期為當前日期
- 查看字符集
- 更改字符集
- 去除某列的空格字符
Oracle常用知識
創建臨時表空間
create temporary tablespace ZHDTGL_TEMP tempfile 'D:\TABLESPACE\ZHGIS\ZHDTGL_TEMP.DBF' size 500m autoextend on next 50m maxsize 1024m extent management local;創建數據表空間
create tablespace ZHDTGL logging datafile 'D:\TABLESPACE\ZHGIS\ZHDTGL.DBF' size 2048m autoextend on next 100m extent management local;創建用戶并指定表空間
create user ZHDTGL identified by zhdtgl default tablespace ZHDTGL temporary tablespace ZHDTGL_TEMP;修改用戶默認表空間
alter user username default tablespace userspace;查詢用戶以及用戶對應的表空間
select username,default_tablespace from dba_users;查詢當前用戶的所有表及表空間
SELECT A.TABLE_NAME, B.COMMENTS, A.TABLESPACE_NAME TBSPNAMEFROM USER_TABLES A, USER_TAB_COMMENTS BWHERE A.TABLE_NAME = B.TABLE_NAMEORDER BY A.TABLESPACE_NAME為用戶授予權限
grant connect,resource,dba to ZHDTGL查看當前用戶權限
select * from session_privs;當在oracle一個用戶創建有關另一個用戶的視圖時提示權限不足
GRANT CREATE ANY TABLE TO USER2; GRANT SELECT ANY TABLE TO USER2; GRANT COMMENT ANY TABLE TO USER2; GRANT LOCK ANY TABLE TO USER2; GRANT SELECT ANY DICTIONARY TO USER2;查看表空間存儲位置
select t1.name,t2.name from v$tablespace t1,v$datafile t2 where t1.ts# = t2.ts#;默認用戶名及密碼
| sys/change_on_install | SYSDBA 或 SYSOPER | 不能以 NORMAL 登錄,可作為默認的系統管理員 |
| system/manager | SYSDBA 或 NORMAL | 不能以 SYSOPER 登錄,可作為默認的系統管理員 |
| sysman/oem_temp | sysman | 為 oms 的用戶名 |
| scott/tiger | NORMAL | 普通用戶 |
| aqadm /aqadm | SYSDBA 或 NORMAL | 高級隊列管理員 |
| Dbsnmp/dbsnmp | SYSDBA 或 NORMAL | 復制管理員 |
查看用戶列表
select username from dba_users;修改用戶名及密碼
alter user 用戶名 identified by 新密碼;查詢數據庫實例
select instance_name from v$instance;獲取各類時間
Oracle 獲取本周、本月、本季、本年的第一天和最后一天--本周select trunc(sysdate, 'd') + 1 from dual;select trunc(sysdate, 'd') + 7 from dual;--本月select trunc(sysdate, 'mm') from dual;select last_day(trunc(sysdate)) from dual;--本季select trunc(sysdate, 'Q') from dual;select add_months(trunc(sysdate, 'Q'), 3) - 1 from dual;--本年select trunc(sysdate, 'yyyy') from dual;select add_months(trunc(sysdate, 'yyyy'), 12) - 1 from dual;-- 獲取上月的開始時間和結束時間select to_char(to_date(to_char(add_months(sysdate, -1), 'yyyy-mm'),'yyyy-mm'),'yyyy-mm-dd hh24:mi:ss')from dual;select to_char(to_date(to_char(sysdate, 'yyyy-mm'), 'yyyy-mm'),'yyyy-mm-dd hh24:mi:ss')from dual;-- 獲取前一天的開始時間和結束時間select to_char(to_date(to_char(sysdate - 1, 'yyyy-mm-dd'), 'yyyy-mm-dd'),'yyyy-mm-dd hh24:mi:ss')from dual;select to_char(to_date(to_char(sysdate, 'yyyy-mm-dd'), 'yyyy-mm-dd'),'yyyy-mm-dd hh24:mi:ss')from dual;-- 獲取上一個小時的開始時間和結束時間select to_date(to_char(sysdate, 'yyyy-mm-dd') || (to_char(sysdate, 'hh24') - 1),'yyyy-mm-dd hh24')from dual;select to_date(to_char(sysdate, 'yyyy-mm-dd') || (to_char(sysdate, 'hh24')),'yyyy-mm-dd hh24')from dual;分條件計數COUNT
參考鏈接:https://blog.csdn.net/qq_32112175/article/details/89707327
union和union all
Union,對兩個結果集進行并集操作,不包括重復行,同時進行默認規則的排序;
Union All,對兩個結果集進行并集操作,包括重復行,不進行排序;
參考鏈接:https://www.cnblogs.com/yuanchaoyong/p/6213885.html
在查詢結果中增加一列不存在的字段
--每一條記錄都會追加name列,且其值為aaa select t.*, 'aaa' name from student t;Oracle數據庫主鍵自增
參考鏈接:https://blog.csdn.net/u014155085/article/details/89670630
導入數據庫dmp文件的幾種方式
參考鏈接:https://blog.csdn.net/shaoduo/article/details/70942016
Oracle數據庫字符集
參考鏈接:https://blog.csdn.net/qq_43455948/article/details/98969497
查詢操作日志
SELECT t.SQL_TEXT, t.FIRST_LOAD_TIME,t.PARSING_SCHEMA_NAME FROM v$sqlarea t WHERE t.SQL_TEXT LIKE 'DELETE%' -- 操作語句 AND t.PARSING_SCHEMA_NAME in('test1','test2') -- 用戶名 AND t.FIRST_LOAD_TIME >= '2020-04-01' -- 執行時間 order by t.FIRST_LOAD_TIME DESC插入數據中文亂碼 顯示問號???
解決方案:
計算機=>屬性=>高級系統設置=>環境變量=>新建
變量名:NLS_LANG
值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
Oracle數據庫的導入和導出dmp文件
參考連接:
- https://www.cnblogs.com/neon/p/11112757.html
- https://www.cnblogs.com/lkzp123456/p/7274823.html
更新日期為當前日期
select to_date(to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') from dual查看字符集
select * from nls_database_parameters where parameter='NLS_CHARACTERSET'更改字符集
ORACLE11G 字符集更改(這里更改為AL32UTF8)
更改步驟:
用sysdba角色用戶登錄sqlplus: 命令行輸入:sqlplus sys as sysdba
輸入口令,進入sqlplus:sql>—
依次鍵入下面的命令行執行:
在進行操作前,要進行數據庫的備份操作;
去除某列的空格字符
update table_name set column_name = replace(column_name, ' ', '');總結
以上是生活随笔為你收集整理的Oracle常用知识的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 调用 GetProcAddress 失败
- 下一篇: 在Visual Studio 2019中