Sybase DBISQL命令行的内部小奥秘
目前,在所有Sybase数据库产品里,都使用dbisql来访问。如果同时安装了两种以上sybase
数据库,则容易产生混乱。
这些数据库有:SQL Anywhere (ASA), Sybase Enterprise Server( ASE), Sybase IQ.
这里告诉大家一个内部用法:
运行命令:dbisql /batch,它会为你产生真正的一个bat文件,来起动dbisql.
e.g.
D:SybaseDBISQLin>dbisql /batch
这时会在当前目录下,产生一个dbisql.bat文件,内容如下:
setlocal
set path=D:SybaseSharedwin32;%path%
set classpath=D:SybaseDBISQLlibisql.jar;D:SybaseDBISQLlibjlogon.jar;D:SybaseShared
javaSCEditor600.jar;D:SybaseSharedjavaJComponents1100.jar;D:SybaseSharedjava
jsyblib600.jar;D:SybaseSharedJavaHelp-2_0jh.jar;;
"D:SybaseSharedJRE-6_0_6_32BITinjava.exe" -Xmx500m -Xms50m -Djava.security.policy="D:SybaseDBISQLlibjava.policy" -Disql.helpFolder="D:Sybase
DBISQLhelp" -Dsybase.native.executable="D:SybaseDBISQLindbisql.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的容易整理得多,没有那么多注册表项来进行更新或者注入。