从 .net 访问 DB2 的推荐方法
我们正在设计一个将从 .Net 访问 DB2 数据库的系统。
似乎有 3 种方法可以做到这一点:
- 动态 SQL
- 存储过程
- CICS
使用动态 SQL 的好处之一是团队中不再需要 Cobol 程序员。这是正确的吗?
您会推荐哪一款?还有其他选择吗?
We are designing a system that will access DB2 databases from .Net.
There appear to be 3 ways to do this:
- Dynamic SQL
- Stored Procedures
- CICS
One benefit of using dynamic SQL, would be to remove the need of having a Cobol programmer on the team. Is this correct?
Which one would you recommend? Are there other options.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我想不出您有什么理由要设计一个带有 CICS 数据访问层的新 .NET 系统。我肯定至少会使用 ADO.NET(我认为这就是动态 SQL 的意思?)。 IBM 有一个可用于 DB2 的 ADO.NET 数据提供程序,其中包含 IDbConnection、IDbReader 等的实现。
我相信 NHibernate 还支持 DB2 UDP,因此您可能也想研究一下。
I can't think of any reason you would design a new .NET system with a CICS data access layer. I would definitely at least use ADO.NET (which what I think you mean by dynamic SQL?). IBM has an ADO.NET data provider available for DB2 with implementations for IDbConnection, IDbReader, etc.
I believe NHibernate also supports DB2 UDP, so you may want to look into that as well.
.NET 可以像连接其他数据库一样连接到 DB2。尝试 DB2Connect。
.NET can connect to DB2 the same way it can connect to other databases. Try DB2Connect.
我倾向于存储过程,它应该比动态 SQL 更快、更易于维护,并且比 CICS/
动态 Sql:
优点: 开发速度更快,熟悉.net 开发人员
缺点: Sql 不是在 DB 中集中维护。您无法查询 DB2 表的使用情况,查找数据库更新的位置。
Sql 在使用时进行分析,导致更高的处理速度
Sql过程
优点:
缺点:可能需要(大型机?)开发人员
Cics
- 优点:
缺点: 额外的信息结构层(额外的开销,更容易出错)
更多编码
对于具有大量使用的大型系统的系统可能值得考虑。
最后一点,Java 有 SQLJ,DB2 中有 SQLJ,SQL 交给 DB2 来存储/维护。
SQLJ 具有与 Sql-Procedures 相同的优点。不过,我不知道 .net 是否有等效项。
I would tend to favour Store Procedures, it should be faster and more maintainable than Dynamic SQL and less coding than CICS/
Dynamic Sql:
Pros: Faster development, Familiar to .net developers
Cons: Sql is not centrally maintained in DB. You can not query DB2 for usage of tables, find where database are updated.
Sql is anaylsed when used, leading to higher processing
Sql Procedures
Pros:
Cons: May need (Mainframe ?) developers
Cics
- Pros:
Cons: Extra layer of infostructure (extra overheads, more to go wrong)
More Coding
May be worth considering for system with large system with very heavy usage.
One Final point, Java has SQLJ, with SQLJ in DB2 the SQL is given to DB2 to store / maintain.
SQLJ has the same advantages as Sql-Procedures. I do not know of a .net equivalent though.