oracle数据库常用查询一

时间:2020-12-09 03:53:49

oracle数据库常用查询一

sqlplus / as sysdba; 或sqlplus sys/密码 as sysdba;两者都是以sys登录。conn scott/tiger@orcl; conn sys/密码@orcl as sysdba;

=============================

1、查看SERVICE_NAME---show parameter service_name;

2、查看监听状态,在非sqlplus窗口下---lsnrctl status 监听名(缺省为listener)

3、启动图形化界面net configuration assistant---$ORACLE_HOME/netca

4、启动NetManager---$ORACLE_HOME/netmgr

5、要了解Oracle当前语言环境中的日期型常量缺省格式---SELECT SYSDATE FROM dual;或SELECT * FROM v$nls_parameters WHERE parameter='NLS_DATE_FORMAT';

--设置时间格式---alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';

SQL> ALTER SESSION SET NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS DAY';

会话已更改。

SQL> SELECT SYSDATE FROM DUAL;

SYSDATE
--------------------------------
2014-10-26 11:18:05 星期日 SQL>
SQL> ALTER SESSION SET NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS AM DAY';
ERROR:
ORA-01818: 'HH24' 不使用上下午指示符 SQL> ALTER SESSION SET NLS_DATE_FORMAT='YYYY-MM-DD HH12:MI:SS AM DAY'; 会话已更改。 SQL> SELECT SYSDATE FROM DUAL; SYSDATE
----------------------------------
2014-10-26 11:20:17 上午 星期日 SQL>

查看语言环境:SHOW PARAMETERS NLS_LANGUAGE; 或 SELECT * FROM V$NLS_PARAMETERS WHERE PARAMETER='NLS_LANGUAGE';

如果需要,可采用如下方式修改当前会话的语言、地域环境以及日期/时间的缺省显式格式设置:
--将语言改为英文 ALTER SESSION SET NLS_LANGUAGE=american;
--将语言改回简体中文 ALTER SESSION SET NLS_LANGUAGE='SIMPLIFIED CHINESE';
--将地域改为美国 ALTER SESSION SET NLS_TERRITORY=america;
--将地域改为中国 ALTER SESSION SET NLS_TERRITORY=CHINA;
--修改日期/时间的缺省显式格式 ALTER SESSION SET NLS_DATE_FORMAT = 'yyyy-mm-dd';
上述修改仅在本次会话范围内有效,实际开发中并不提倡这样的做法,而是应该采用相应的日期型函数(to_char()或to_date()等)进行转换,其功能更强大而灵活。

5 、显示当前环境变量的值----Show all

6、显示当前在创建函数、存储过程、触发器、包等对象的错误信息---Show error 
当创建一个函数、存储过程等出错时,变可以用该命令查看在那个地方出错及相应的出错信息,进行修改后再次进行编译。

7、显示初始化参数的值---以SYS身份登录---show PARAMETERS [parameter_name]

8、显示数据库的版本---- show REL[EASE]

9、显示SGA的大小,以sys身份登录----show SGA

10、显示当前的用户名---show user或select username from user_users;

11、查看用户所有表

select * from dba_tables where owner='用户名';--用户名要大写!
SQL> select table_name from dba_tables where owner='NETFOLDER';

12、查看权限

select * from user_sys_privs;//查看当前用户所有权限

13、查看所有用户:select * from all_users; -------查看所有的用户

14、查看实例运行状态

SQL> select instance_name,status from v$instance;

INSTANCE_NAME STATUS
---------------- ------------
orcl OPEN

==================

与用户权限、角色相关的表:

user_sys_privs:查看用户具有哪些系统权限
user_tab_privs_made:查看某个用户对哪些表向其它用户开放了哪些对象权限
user_col_privs_made:……列权限……
user_tab_privs_recd:查看某个用户被授予了哪些表上的哪些对象权限
user_col_privs_recd:……列权限……
user_role_privs:查看已经授予一个用户哪些角色
role_sys_privs:查看某个角色包含的系统权限
role_tab_privs:查看某个角色包含哪些对象权限