阅读:1862回复:4
用ADO关联外部数据表出错?
<P>语言:C# </P>
<P>ADO:2.5</P> <P>代码如下:</P> <P> connStr = "PROVIDER=sqloledb;";<BR> connStr += "initial catalog=xgkdw;Server=FCEBC2D739094F0\\LVJL;";<BR> connStr += "user id=sa;password=123456;";<BR> sqlStr = "select FID,LocationX,LocationY,LocationName from StationLocation where FID = '011'";</P> <P> ADODB.Connection pConn=new ADODB.Connection();<BR> ADODB.Command pCommand = new ADODB.Command();<BR> pCommand.CommandText = sqlStr;</P> <P> //pCommand.ActiveConnection = pConn;<BR> pCommand.CommandType = ADODB.CommandTypeEnum.adCmdText;<BR> pConn.ConnectionString = connStr;<BR> pConn.Mode = ADODB.ConnectModeEnum.adModeReadWrite;//只读方式<BR> pConn.Open(connStr, "sa", "123456", 0);//打开联接<BR> //object recordsAffected;<BR> //pConn.Execute(sqlStr, out recordsAffected, 1);//执行查找<BR> ESRI.MapObjects2.Core.Recordset recs;<BR> pTable = new ESRI.MapObjects2.Core.Table();<BR> pTable.Command = pCommand;<BR> recs = pTable.Records;<BR> while (!recs.EOF)<BR> {<BR> label1.Text = "connect succeed!";<BR> label3.Text = recs.Fields.Item(3).Value.ToString();<BR> recs.MoveNext();<BR> } </P> <P>当我执行的时候,为什么执行到recs = pTable.Records;时报错,错误如下:The Recordset could not be created.数据库的设置应该是没错的,为什么不能正确生成recordset?请高手指点,我看到一些VB程序是这样建立的,我改成c#为什么就不行了呢?</P> |
|
1楼#
发布于:2008-03-17 15:40
解决了,哈哈,在pCommand.ActiveConnection = pConn;语据之前应该先设置pConn.ConnectionString属性。
|
|
2楼#
发布于:2008-03-30 17:56
不错,我一直在找用ADO构造ITable的方法,你这个是不是就已经得到ITable了呢?
|
|
3楼#
发布于:2008-03-31 11:10
看错了,MD原来是MO的
|
|
4楼#
发布于:2008-04-14 20:46
没错,可以直接得到table对象,然后就可以实现关联了。
|
|