數據庫重新設計以后,要重新連接數據庫嗎?


我用Access2000做了一個數據庫,原本里面有三列,現在我重新設計,添加了兩列,然后在程序中相應的位置添加連接這兩列數據的語句。(用list控件顯示)運行程序,出現錯誤。將新添加的語句注釋掉,程序運行正常。請問為什么呀?搞了一天了都沒整明白,是不是還要重新連接數據庫啊?我用的是相對路徑,改成絕對路徑也不行。高手來幫幫忙吧。

6 个解决方案

#1


連接數據庫和獲取數據集是分開的,你數據庫連接肯定沒有問題,是獲取數據集錯了,貼你的sql語句吧。
或許是這樣,你本想的到 a,b,c  但是你的語句卻寫成了這樣 select a,b from 。。。
然后 你還getcollect(“c”)了,這樣當然就錯了。語句要寫成select a,b,c from 。。。

#2


void CToolDlg::AddToGrid()
{
    ADOConn m_AdoConn;
//打開數據庫連接
m_AdoConn.OnInitADOConn();
CString sql;
sql.Format("select * from tool order by 刀具編號 desc");
_RecordsetPtr m_pRecordset;
//打開記錄集
m_pRecordset=m_AdoConn.GetRecordset((_bstr_t)sql);
//遍歷記錄集
while(m_AdoConn.m_pRecordset->adoEOF==0)
{
m_grid.InsertItem(0,"");//插入行
//將記錄集字段中的記錄添加到List Control控件中
        m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->GetCollect("刀具編號"));
m_grid.SetItemText(0,1,(char*)(_bstr_t)m_pRecordset->GetCollect("刀具名稱"));
m_grid.SetItemText(0,2,(char*)(_bstr_t)m_pRecordset->GetCollect("庫存量"));
m_grid.SetItemText(0,3,(char*)(_bstr_t)m_pRecordset->GetCollect("等等"));
//使記錄集指針指向下一記錄
m_pRecordset->MoveNext();
}
//斷開數據庫連接
m_AdoConn.ExitConnect();
}
以上是我的遍歷集函數代碼,原來只有前三個,等我加上“等等”這一列以后,就不行了

#3


這段代碼應該沒有問題吧

#4


路過~學習一下~

#5


在哪一行出錯了,出的什么錯?

#6


引用 5 樓 csl312211865 的回復:
在哪一行出錯了,出的什么錯?

下面這句:
m_grid.SetItemText(0,3,(char*)(_bstr_t)m_pRecordset->GetCollect("等等"));
注釋掉就運行正常,否則就會出錯。

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com