设置sqlplus访问远程oracle数据库的最快方法
如果要连接远程数据库,传统的一定可行的方法是在本地装一个oracle,然后使用“Network Configuration Assistant”配置,之后用PL/SQL Dev连接
oracle官网上提供了最小访问包,就是如下3个包,加起来35MB。
1、首先去oracle的官方网站上http://www.oracle.com/technology/software/tech/oci/instantclient/index.html下载(下面是10g的):
instantclient-basic-win32-10.2.0.4.zip
instantclient-odbc-win32-10.2.0.4.zip
instantclient-sqlplus-win32-10.2.0.4.zip
将下载的安装包全部解压,放在同一个目录下,比如在d:\sqlplus。
2、 “控制面板”-”系统”-”高级”-”环境变量”-”系统变量”添加几个环境变量:
NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK(或AMERICAN_AMERICA.ZHS16GBK)
TNS_ADMIN = d:\sqlplus
LD_LIBRARY_PATH = d:\sqlplus
SQLPATH = d:\sqlplus
Path变量结尾添加d:\sqlplus
3、在d:\sqlplus目录下创建TNSNAME.ORA文件,自己敲容易出问题,建议直接到安装oracle数据库的机器上拷贝过来用,内容如下:
# tnsnames.ora Network Configuration File: D:\oracle\product\10.1.0\db_2\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.208.120)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
以上文件中,ORCL是个连接标示符,可以自己修改,HOST是远程Oracle服务器的地址,PORT是Oracle的服务端口,没有修改过的话,默认是1521。Service_name是远程实例名称。
4、命令行下,切换到d:\sqlplus,运行odbc_install.exe,安装ODBC驱动。
5、使用sql-plus连接
命令行下执行sqlplus /nolog
进入sqlplus提示符,输入
connect <username>/<password>@<连接标识符>
或者
sqlplus system/manager@192.168.208.120:1521/orcl
没有意外的话连接成功。
如果上述方法试验没有成功,用下面的方式最直接了
Sqlplus system/manager@'(description=(address_list=(address=(proto=tcp)(host=192.168.2
相关文档:
1. ASCII
返回与指定的字符对应的十进制数;
SQL> select ascii(A) A,ascii(a) a,ascii(0) zero,ascii( ) space from dual;
A A ZERO SPACE
--------- --------- --------- ---------
65 97 48 32
2. CHR
给出整数,返回对应的字符;
SQL> select chr(54740) zhao,chr(65) chr65 from ......
select * from sys.smon_scn_time;
--scn 与时间的对应关系
每隔5分钟,系统产生一次系统时间标记与scn的匹配并存入sys.smon_scn_time表。
select * from student as of scn 592258
就可以看到在这个检查点的表的历史情况。
然后我们恢复到这个检查点
insert into student select * from student a ......
ROLLUP,是GROUP BY子句的一种扩展,可以为每个分组返回小计记录以及为所有分组返回总计记录。
CUBE,也是GROUP BY子句的一种扩展,可以返回每一个列组合的小计记录,同时在末尾加上总计记录。
在文章的最后附上了相关表和记录创建的脚本。
1、向ROLLUP传递一列
SQL> select division_id,sum(salary)
2  ......
GROUPING函数可以接受一列,返回0或者1。如果列值为空,那么GROUPING()返回1;如果列值非空,那么返回0。GROUPING只能在使用ROLLUP或CUBE的查询中使用。当需要在返回空值的地方显示某个值时,GROUPING()就非常有用。
关于ROLLUP和CUBE函数的使用,请参见我的另一篇文章。
http://blog.csdn.net/wh62592855/archive/2009/1 ......