一、基本信息對比
表 1. Informix .NET Provider 和 IBM Data Server .NET Provider 的对比
特性 | IBM Informix .NET Provider | IBM Data Server .NET Provider |
---|---|---|
协议支持 | SQLI | DRDA |
Informix 服务器支持 | 任何支持的 IDS 版本 | 只限 Informix v11.10 或更高版本 |
LOB (BLOB & CLOB) 列大小限制 | 4 TB | 2 GB |
对 .NET framework 3.0/3.5 的支持 | 无 | 有 |
对 LINQ(实体框架)的支持 | 无 | 有 |
Silverlight 和 AJAX 开发支持 | 无 | 有 |
ASP.NET 动态数据支持 | 无 | 有 |
ADO.NET Entity Data Modeling (EDM) 支持 | 无 | 有 |
使用 EDM 的 Visual Studio Tools for Office (VSTO) 开发 | 无 | 有 |
对 VS 2008 的 VSAI 支持,web 应用程序开发支持,WPF 和 WWF 增强 | 无 | 有 |
用于创建表、过程、函数和触发器以及运行过程和函数的 VSAI 设计器 | 无 | 有 |
除了这些差异之外,性能测试已经表明,对于性能要求高的应用程序,Data Server .NET Provider (DRDA) 的可伸缩性比 Informix .NET Provider (SQLI) 更好。
IBM Informix .NET Provider :
IBM Data Server .NET Provider:
二、代碼
private static DataTable Qty(string i_sSqlStr) { DateTime dtS = DateTime.Now; DataTable dtReturn; //查詢基礎資料 try { using (IfxDataAdapter sa = new IfxDataAdapter(i_sSqlStr, gsConnStr)) { dtReturn = new DataTable("tbName"); sa.Fill(dtReturn); } } catch (Exception ex) { dtReturn = null; Console.WriteLine(ex.Message); } Console.WriteLine(string.Format("Qty DB處理用時 {0} 毫秒,共查詢{1}筆資料。", (DateTime.Now - dtS).TotalMilliseconds, dtReturn.Rows.Count)); return dtReturn; } private static DataTable QtyDB2(string i_sSqlStr) { DateTime dtS = DateTime.Now; DataTable dtReturn; //查詢基礎資料 try { using (DB2DataAdapter sa = new DB2DataAdapter(i_sSqlStr, gsConnStrDB2)) { dtReturn = new DataTable("tbName"); sa.Fill(dtReturn); } } catch (Exception ex) { dtReturn = null; Console.WriteLine(ex.Message); } Console.WriteLine(string.Format("Qty DB處理用時 {0} 毫秒,共查詢{1}筆資料。", (DateTime.Now - dtS).TotalMilliseconds, dtReturn.Rows.Count)); return dtReturn; }
三、
时间: 2024-10-12 22:56:46