通过ODBC的方式连接,老是出现内存错误,无法解决。 ;Pe=cc"@
大家都是通过什么方式连接的呀,贴一下代码看看,我实在是没辙了,谢谢大家了 <"{VVyK
Lwn
r0*Y~
KHw
using (OdbcConnection odbcCon = new OdbcConnection(“DSN=Primavera SDK;UID=admin;PWD=admin”)) r*9*xZ>8u
{ <."KejXg-
odbcCon.Open(); 4`Lr^q}M+
OdbcCommand oLogCmd = odbcCon.CreateCommand(); m}6Jdt'|
oLogCmd.CommandText = querrySql; ;
*\xdg{d
IYv.~IQO
OdbcDataReader reader = oLogCmd.ExecuteReader(); $i%#fN
h 27f0x9
DataTable table = new DataTable(); Vllxv6/_
int fieldCount = reader.FieldCount; |G_, 1$
for (int i = 0; i < fieldCount; i++) JJ9R,
8n6
{ wV-9T*QrM
table.Columns.Add(reader.GetName(i), reader.GetFieldType(i)); "RgP!
} wHh6y? g\
table.BeginLoadData(); qiH)J-
~GZ
object[] values = new object[fieldCount]; Z<,Hz
+
while (reader.Read()) S0M i
{ NxnaH!wS
reader.GetValues(values); FC
WF$'cO
table.LoadDataRow(values, true); "z*.Bk
} sR/y|
table.EndLoadData(); o`G6!
DataSet ds = new DataSet(); >~_z#2PA
ds.Tables.Add(table); e ?FQ6?
reader = null; ;hF}"s
hJN
oLogCmd = null;
[w!T
odbcCon.Close(); ;A4j_8\[
return ds; ZMLN
;.{Na
>'4$g7o,
} 9MH;=88q
此外 这种连接方式 还会莫名其妙的在创建连接的时候出错 出错内容如下 t2Jf+t_B7
ERROR [HZ080] [ATI][OpenRDA ODBC]RDA error: Resource not available - Connect error: da=PMSDK;Driver=PMSDK;engine=PM;lf=C:\temp\PMSDK.LOG;lo=verbose;pg=1;pp=pubuser;pu=pubuser;. yEk|(6+^
Error returned from engine: VDB.Connect; EAccessViolation=Access violation at address 101C120E in module 'PMSDK.dll'. Read of address 00000020 /GX>L)
Error number: 0x80004005 %a|Qw(4
\
ERROR [01000] [Microsoft][ODBC 驱动程序管理器] 驱动程序不支持这个应用程序请求的 ODBC 行为的版本 (参见 SQLSetEnvAttr)。