Sybase DBISQL命令行的内部小奥秘

目前,在所有Sybase数据库产品里,都使用dbisql来访问。如果同时安装了两种以上sybase数据库,则容易产生混乱。

这些数据库有:SQL Anywhere (ASA),  Sybase Enterprise Server( ASE), Sybase IQ.

这里告诉大家一个内部用法:
运行命令:dbisql /batch,它会为你产生真正的一个bat文件,来起动dbisql.

e.g.
D:\Sybase\DBISQL\bin>dbisql /batch

这时会在当前目录下,产生一个dbisql.bat文件,内容如下:
setlocal
set path=D:\Sybase\Shared\win32;%path%
set classpath=D:\Sybase\DBISQL\lib\isql.jar;D:\Sybase\DBISQL\lib\jlogon.jar;D:\Sybase\Shared\java\SCEditor600.jar;D:\Sybase\Shared\java\JComponents1100.jar;D:\Sybase\Shared\java\jsyblib600.jar;D:\Sybase\Shared\JavaHelp-2_0\jh.jar;;
"D:\Sybase\Shared\JRE-6_0_6_32BIT\bin\java.exe" -Xmx500m -Xms50m -Djava.security.policy="D:\Sybase\DBISQL\lib\java.policy" -Disql.helpFolder="D:\Sybase\DBISQL\help" -Dsybase.native.executable="D:\Sybase\DBISQL\bin\dbisql.com" -Dsun.java2d.noddraw=true -Dsun.java2d.d3d=false -ea sybase.isql.isql 
endlocal

我们看到,实际上,它是一个java程序。dbisql.com比较奇怪。
总的来说,dbisql.exe会启动一个jvm,再load它所需要的jar/class。

有时间我会整理出完全独立的Sybase Central for ASE/ASA/IQ的绿色包,解压即可执行。这样最省事。Sybase的产品比Oracle的容易整理得多,没有那么多注册表项来进行更新或者注入。

你可能感兴趣的:(Sybase DBISQL命令行的内部小奥秘)