⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_63165.htm

📁 vc
💻 HTM
字号:
<p>
序号:63165 发表者:海底人 发表日期:2003-12-01 22:28:04
<br>主题:如何动态连接数据库?请大虾,
<br>内容:我想用ADO动态连接数据库,<BR>_ConnectionPtr&nbsp;&nbsp;&nbsp;&nbsp;m_pConnection;<BR>m_pConnection.CreateInstance(__uuidof(Connection));<BR>CString m_cConnectStr;<BR>m_cConnectStr=&#34;Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Demo.mdb&#34;;<BR><BR>m_pConnection-&gt;Open(m_cConnectStr,&#34;&#34;,&#34;&#34;,adModeUnknown);<BR><BR>ADO里不可以先动态组成连接字符串,然后代入OPEN里出错?<BR>说不能将CString转换成Open里的参数类型,应该怎么做?
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:YLZ 回复日期:2003-12-01 22:51:51
<br>内容:m_pConnection-&gt;Open((_bstr_t)m_cConnectStr,&#34;&#34;,&#34;&#34;,adModeUnknown);<BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:海底人 回复日期:2003-12-01 23:43:33
<br>内容:m_pConnection-&gt;Open();<BR>里有什么参数?分别是什么类型的呢?如果还有密码应该怎么转换?谢谢YLZ
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:海底人 回复日期:2003-12-09 00:20:51
<br>内容:重新连接时会出错?<BR> void CDlg1::OnOK() {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; UpdateData(TRUE);<BR>&nbsp;&nbsp;&nbsp;&nbsp;CString m_cConnectStr;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AfxOleInit();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Mode COM endenl<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m_pConnection.CreateInstance(__uuidof(Connection));<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m_cConnectStr=&#34;Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Demo.mdb&#34;;<BR>&nbsp;&nbsp;&nbsp;&nbsp;//to catch the connect error messages<BR>&nbsp;&nbsp;&nbsp;&nbsp;try{&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;// Open database <BR>&nbsp;&nbsp;&nbsp;&nbsp;m_pConnection-&gt;Open((_bstr_t)((_bstr_t)&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m_cConnectStr,&#34;&#34;,&#34;&#34;,adModeUnknown);<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;catch(_com_error e){<BR>&nbsp;&nbsp;&nbsp;&nbsp;AfxMessageBox(&#34;Connect Faile! Please chack the dir of database file&#34;);<BR>}<BR>在EXIT里<BR>if(m_pConnection-&gt;State){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m_pConnection-&gt;Close();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m_pConnection= NULL;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} <BR><BR>为何重新按OK后会出错说DEBUG ASSERTION FAILSED!<BR>请指教!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:wjb 回复日期:2003-12-09 08:19:53
<br>内容:AfxOleInit(); 语句执行多次会出错。<BR>放在其他位置,执行一次就可以了。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:海底人 回复日期:2003-12-09 22:18:44
<br>内容:应该放在什么位置呢?我是在OK处理时才连接数据库的。谢谢。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:wjb 回复日期:2003-12-10 08:12:47
<br>内容:AfxOleInit();放在程序启动的地方最好。<BR>或者在处理函数中也可以,但是保证只运行一次。<BR>一般放在app类的InitInstance函数中最好。<BR><BR>AfxOleInit();并不是ADO的内容,而是ADO是COM类型的,而AfxOleInit();是初始化COM运行环境的。<BR><BR>open设置:<BR>http://www.vchelp.net/cndevforum/subject_view.asp?subject_id=61896&amp;forum_id=79<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:okvc 回复日期:2003-12-10 16:21:39
<br>内容:http://www.vchelp.net/cndevforum/subject_view.asp?subject_id=61896&amp;forum_id=
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -