俺是MS SQL那小胡同里走出来的,所以木有了界面,oracle的那些命令又不熟,就不知道该如何使用这个东东了。
请教几个常用的操作,我在windows的cmd命令里操作的:
1.登陆sqlplus的时候,上来就让输入用户名,可是我怎么知道这是登陆的那个数据库实例?安装时的orcl还是后来自己建立的其他数据库实例?
2.我在sqlplus里好几次conn不同用户,这个时候就不知道当前我是用哪个用户了我该怎么查当前的用户?
3.查了半天,可能自己也不记得用的是哪个数据库了,这个时候我用什么命令查询当前使用的数据库?
4.我当前登陆在A库里,写了半天Sql,然后我现在想切到B库,该如何操作?
5.我用sys登陆,startup open 数据库名,总会提示当前密码不符合另一个数据库之类的那么我shutdown之后要如何才能启动我的某个数据库?
6.我目前有两个用户abc和xyz,我现在想分别查看这两个用户都拥有哪些表,要如何查看?不会要分别用这俩登陆名 然后select name from all_tables;吧sys的身份登陆,可以查询吗?请帮忙解答一下,多谢~~~~~~另外有没有oracle的基本操作方面的书籍推荐一下,偶做开发的,不做DBA,差不多会用就行

解决方案 »

  1.   

    1,登陆的哪个实例,可以通过 set ORACLE_SID=实例名 来设置 
    2,执行 show user 命令
    3, 可以查看数据字典啊  select * from V$database;  字段name 就是数据库名字
      

  2.   

    1.关键是看操作系统的环境变量ORACLE_SID指向那个实例名
    2.show user;(或select user from dual;)
    3.select * from v$instance;
    4.connect user/pass@tnsnames_b;
    5.修改环境变量ORACLE_SID指向要启动的数据库;
    6.以sys登录,select * from dba_tables t where t.owner in('abc','xyz');
      

  3.   

    4,开两个sqlplus 或 保存当前的sql 到文件中,然后执行 @加路径
    5,要启动某个实例的数据库,先设置oracle_SID  用set ORACLE_SID=XXX 命令
    6,select * from dba_tables where owner=?? ;  用户名等于你要的用户
      

  4.   

    1  set ORACLE_SID=
       export ORACLE_SID=
    2  show user
    3  SELECT NAME FROM v$database;
    4  conn user/passwd@b_tnsname
    5  exit sqlplus
       set ORACLE_SID=
       sqlplus / as sysdba
       startup
    6  select owner,table_name from dba_tables
       where owner in ('ABC','XYZ');   
      

  5.   

    有些问题用PL/SQL工具就不存在了。
    1 and 3.查看当前实例名
         SQL>select name from v$database; or SQL>select name from v$instance;
    5.启动oracle数据库
      启动监听:lsnrctl start
      连接数据库:sqlplus '/as sysdba'
      启动实例:startup
      关闭实例:shutdown immediate
      每次只能启动一个实例,如果要启动多个实例,需要修改SID,具体操作如下:
       vi $ORACLE_BASE/.bash_profile
      修改export ORACLE_SID=?
    6.select * from dba_tables where owner=???推荐书籍《Oracle Database11g SQL开发指南》《Oracle数据库精讲与疑难解析》比较基础
      

  6.   

    按你的要求:
    1.SQL要求掌握;
    2.PL/SQL要求掌握;
    3.ORACLE基础(结构、存储、对象管理)了解;
    基础的书随便在书店买一本就行了,如oracle 9i/10g 入门与提高 等
      

  7.   

    SQL>select name from v$instance;
    这个写错了,select * from v$instance;
      

  8.   


    参考上面的。 这里都是基础的知识,你可以先基础开始吧,Oracle的书很多,找基础的都可以了。