解惑

解己之惑,解人之惑

日:2007年4月18日

问题多多

刚刚说到我们要迁移数据库,所以我就试验了下使用ODBC连接数据库,配置完成以后,可以连接,但是在选择表的时候有问题,里面只列出了oracle的一些包,没有列出任何一个表或者视图,加了一个Command,随便写了一个SQL,从我们的一个表里面取全部数据(select * from tablename),可以正常过,到了报表设计器里面可以看到Command列出的字段确实是SQL选择的那个表的字段,但是把字段添加到报表中,然后预览的时候设计器就死掉自动退出了。

打开Business View Manager,添加数据源,从那个里面可以正常的列出数据库的表和视图。

看来Crystal Report的代码重用没有做好,一些地方可以正常工作,但是另外的地方就不能正常工作了。

更新:
找到解决方案了,选择那个ODBC连接,右键打开菜单选择Options,在Data Explorer中把Stored procedures去掉就可以了。

数据库可移植性重要吗?

对于大部分应用而言,数据库可移植性可能不太重要,而一些完全使用ORM的应用可能也问题不大,但是一旦需求来了,它就变得非常的重要,现在我们就遇到了这样的需求。
我们原来一直使用Oracle,也从来没有想到要更换数据库类型,所以我们一直心安理得的使用各种Oracle优化技巧来优化我们的SQL(我们的系统的性能要求也比较高),现在有个新客户,要求使用SQL Server,这下就麻烦大了,初步估计需要5000个小时!
这个变化也影响到我们做的水晶报表,原来没有考虑数据库迁移,所以选择数据库连接的时候直接选择的就是Oracle服务器,而不是建一个ODBC的数据源,而水晶报表的数据库配置是不能随便修改的,不说更换数据库类型,就是更换一下服务名都不行。

PS:据说微软愿意为我们的数据库迁移支付一部分的成本,呵呵,果然是财大气粗啊。

© 2025 解惑

本主题由Anders Noren提供向上 ↑