【Oracle】初次使用Oracle12c希望了解的一些操作

来源:互联网 发布:matlab将数据介于之间 编辑:程序博客网 时间:2024/05/07 00:28


    当你初次使用Oracle数据库的时候,我们可能会觉得比较困难,一般来说,初次使用一个数据库的时候,我们最想知道的操作是什么,作者认为可能是如下几个疑问。


1、怎么进入到SQL执行界面


方法一:打开命令提示符,直接输入sqlplus即可进入SQL界面;


方法二:使用Oracle自带的sqlplus程序,打开方式是,从windwos开始菜单中选择到Oracle的安装程序(Oracle - OraDB12Home1),然后“应用程序开发”---"SQL Plus";


方法三:据说可以使用工具-Oracle SQL Developer,这个工具在安装完成Oracle12c后会有,打开方式也是在“应用程序开发”下面,跟“SQL Plus”在一起。(使用浏览器模式访问

,如:http://localhost:1521/isqlplus,这个在Oracle 10g版本是有的,但是据说是从Oracle 11g开始就没有了,该功能被Oracle SQL Developer替换。)

    初次使用数据库,进入SQL界面后,可以使用sys或者system系统dba用户来登录。然后来操作数据库,包括建立自己的用户,表结构等。如果你要使用普通用户,比如scott,初次使用时候你需要对你解锁。


2、解锁scott用户并登录scott用户


登录sys用户,并且是以sysdba的身份登录,然后对scott用户进行解锁。

C:\Users\v1000>sqlplus sys as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on 星期六 10月 11 10:33:26 2014

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

输入口令:
连接到:
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL> show user;
USER 为 "SYS"
SQL> alter user scott account unlock;

用户已更改。



        解锁之后,即可登录scott用户,命令行输入:sqlplus scott/tiger ,初次使用scott时候,系统会提示你密码过期,要你修改,这里建议修改的值还是tiger,这样便于记忆。


C:\Users\v1000>sqlplus scott/tiger

SQL*Plus: Release 12.1.0.1.0 Production on 星期六 10月 11 10:36:43 2014

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

ERROR:
ORA-28001: the password has expired


更改 scott 的口令
新口令:
重新键入新口令:
口令已更改

连接到:
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL>


修改密码命令:alter user system identified by pwd123

3、怎么创建Oracle用户


create user c##WolfOfSiberian identified by QuietWolf;

grant connect,resource,dba to c##WolfOfSiberian;(select username from all_users;)

commit;


参考链接:http://docs.oracle.com/cd/E11882_01/server.112/e41084/statements_8003.htm#SQLRF01503


4、怎么查看当前操作用户以及当前使用数据库


4.1 查看当前操作用户


show user;


4.2 查看当前使用数据库


适用所有用户:

select SYS_CONTEXT('USERENV','INSTANCE_NAME') from dual;

具有DBA的权限的用户

select name from v$database;

show parameter name


4.3 查看当前数据库所有表


select table_name from user_tables;


4.4 查看表结构


desc emp;


4.5 其他


-- 查看ORACLE 数据库中本用户下的所有表 
SELECT table_name FROM user_tables;

-- 查看ORACLE 数据库中所有用户下的所有表 
select user,table_name from all_tables;

-- 查看ORACLE 数据库中本用户下的所有列 
select table_name,column_name from user_tab_columns;

-- 查看ORACLE 数据库中本用户下的所有列 
select user,table_name,column_name from all_tab_columns;

-- 查看ORACLE 数据库中的序列号 
select * from user_sequences;

-- 上面的所有对象,都可以通过下面的SQL语句查询得到 
-- 
查询所有的用户生成的ORACLE对象 
SELECT * FROM user_objects;

-- 查看ORACLE 数据库中所有表的注释 
select table_name,comments from user_tab_comments;

-- 查看ORACLE 数据库中所有列的注释 
select table_name,column_name,comments from user_col_comments;

-- 给表加ORACLE的注释 
COMMENT ON TABLE aa10 IS '
系统参数表';

-- 给列加ORACLE的注释 
COMMENT ON COLUMN aa10.aaa100 IS '
参数类别';

-- 查看表中列的属性,包括 数据类型,是否非空等 
DESC aa10; 
-- 
通过系统表,查看表中列的属性,包括 数据类型,是否非空等 
SELECT table_name,COLUMN_ID,column_name,data_type,data_length,DATA_PRECISION,NULLABLE 
FROM user_tab_columns 
ORDER BY table_name,COLUMN_ID;

--查看所有表空间  

selecttablespace_name,sum(bytes)/1024/1024 from dba_data_files  group by tablespace_name

--查看未使用表空间大小

selecttablespace_name,sum(bytes)/1024/1024 from dba_free_space group bytablespace_name;


-- 
查看数据库中表、索引占用的数据库空间大小 
SELECT * FROM user_segments;

-- 查看所有表的记录数 
CREATE TABLE table_count(table_name VARCHAR2(50),columns NUMBER(20)); 
-- 
通过PB运行下面的语句,得到结果集,将结果集在PB下执行,最后提交
select 'insert into table_count values('''||table_name||''', (select count(1)from '||table_name||'));//'||comments from user_tab_comments; 
-- 
所有表的记录都在table_count 
SELECT * FROM table_count;

4.6 如何查看当前oracle 日期默认格式

select * from nls_session_parameters;select * from nls_instance_parameters;select * from nls_database_parameters;其中的NLS_TIME_FORMAT就是日期格式,这三句分别是会话级,实例级和数据库级的

5、怎么创建数据库


方法一:使用database configuration Assistant

                            具体步骤参见:http://blog.csdn.net/wolfofsiberian/article/details/39966549

方法二SQL命令形式,后面学习后再补充


6、oracle中sql plus是怎么连接数据库的


(1)若在图形界面方式下,则需在主机字符串(Host string)中指明连接描述符。
如果你采用的是默认安装,没有指明连接描述符,通常为orcl。
(2)在命令行方式下,连接命令的格式是:conn username/password@connect_identifier
username:用户名
password:口令
connect_identifier:连接描述符
如果没有指定连接描述符,则连接到系统环境变量ORACLE_SID所指定的数据库。
如果没有设定ORACLE_SID,则连接到的数据库。
如果你的机器上安装过两个或两个以上数据库,那必须在命令中加上@连接描述符。


7、高级语言如何访问Oracle数据库


请参见Java操作Oracle数据库:http://blog.csdn.net/wolfofsiberian/article/details/39803657


8、查询SQL语句执行错误对应的帮助


SQL> host oerr ora 1
ORACLE_HOME not set.  Contact Oracle Support Services.

当前还不能正常使用错误的相关帮助提示,解决方案参见:http://blog.csdn.net/wolfofsiberian/article/details/39991017


附录


Oracle在线手册:http://docs.oracle.com/database/121/index.htm


参考资料:http://www.cnblogs.com/tearer/archive/2012/12/13/2815601.html

0 0
原创粉丝点击