最近的一个项目就是移植老项目的代码,有一个模块用的是Sybase数据库,我表示从来没接触过,更不用说怎么用了。再者这东西都是几乎被淘汰的东西了,而且网上搜到的东西简直了,全是复制粘贴的。
一、使用工具连接Sybase数据库
我用的是SQL Advantage,下载地址点我,使用方法:
1.解压下载的sqladv-12_5.zip至任意目录下
2.编辑sqladv-12_5\ini目录下的sql.ini文件,添加想要连接的Sybase服务器信息。文件sqladv-12_5\ini\sql.ini中有个示例:
[syb1254]
master=NLWNSCK,192.168.1.5,5000
query=NLWNSCK,192.168.1.5,5000
你新添加Sybase服务器的时候,仅需要sql.ini文件的尾部添加类似上面的信息。中括号中表示服务器名称,你可以自己起一个标记性的名字。将192.168.1.5替换成你将要连接的 Sybase服务器的IP地址,将5000替换成Sybase服务器的监听端口。
注意:中间使用英文逗号分割。
3.双击目录sqladv-12_5下的“启动sqladv.bat”文件,即可运行SQL Advantage工具了。不要执行“sqladv.exe”这个文件,因为没有配置环境变量SYBASE。直接执 行”start_sqladv.bat”即可。
4.打开SQL Advantage工具后,点菜单Server>Connect,在连接信息配置窗口中,其中Server列表中的Sybase服务名就是在第二步中配置的。Client host表示连接到Sybase
服务器中的客户端标志。
如果想配置网络包大小、大文本字段的长度、客户端字符集等属性,可以点Options…按钮
成功连接到Sybase服务器后,查看数据库内的表,点菜单View>Pick Lists>Tables & Columns
二、JNDI和Hibernate的配置
首先导入两个jar包,下载地址点我,
JNDI配置:
<Resource auth="Container" driverClassName="com.sybase.jdbc3.jdbc.SybDataSource"
maxActive="50" maxIdle="25" name="根据自己的需要" username="自己的" password=自己的"
type="javax.sql.DataSource" url="jdbc:sybase:Tds:服务器地址:端口/query"
/>
Hibernate配置:
<bean id="Factory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="DataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.Sybase11Dialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.jdbc.batch_size">80</prop>
<prop key="hibernate.connection.autocommit">true</prop>
<prop key="hibernate.connection.release_mode">after_transaction</prop>
<prop key="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</prop>
</props>
</property>
</bean>
三、使用JDBC方式连接:
SybDataSource od = new SybDataSource();
od.acceptsURL("jdbc:sybase:Tds:");
od.setServerName("数据库url");
od.setDatabaseName("query");
od.setPortNumber(端口号);
od.setUser(" ");
od.setPassword(" ");