我不活了,讨厌的ADO....................
_RecordsetPtr m_pRecordset;
_ConnectionPtr m_pConnection;
try{
m_pConnection->ConnectionString = L"driver={sql server};server=(local);Database=skii;UID=sa;PWD=;";
m_pConnection->Open("","","",-1);
m_pRecordset->Open("CREATE TABLE newBill(is_new INTEGER,bill_id CHAR(13))",
(IDispatch*)m_pConnection,adOpenDynamic,adLockOptimistic,adCmdText);
if (m_pRecordset)
{
m_pRecordset->Close();
}
m_pConnection->Close();
}
catch(_com_error* e)
{
AfxMessageBox(e->ErrorMessage());
}
问题点数:20、回复次数:5Top
1 楼luxyi()回复于 2001-02-14 17:56:00 得分 0
你要干什么?Top
2 楼happyno9(寒风中的烟头)回复于 2001-02-14 18:02:00 得分 0
是啊,他要干什么?Top
3 楼wyzegg(蛋)回复于 2001-02-14 21:46:00 得分 20
_RecordsetPtr m_pRecordset=NULL;
_ConnectionPtr m_pConnection;
try{
m_pConnection->ConnectionString = L"driver={sql server};server=(local);Database=skii;UID=sa;PWD=;";
m_pConnection->Open("","","",-1);
m_pRecordset->Open("CREATE TABLE newBill(is_new INTEGER,bill_id CHAR(13))",
(IDispatch*)m_pConnection,adOpenDynamic,adLockOptimistic,adCmdText);
if (m_pRecordset)
{
m_pRecordset->Close();
}
m_pConnection->Close();
}
catch(_com_error* e)
{
AfxMessageBox(e->ErrorMessage());
}Top
4 楼zhq2000(方舟)回复于 2001-02-15 00:37:00 得分 0
大哥!Recordset 是用来存放结果集的,不是用来发操作命令的。直接使用Connection或Command! 在你的程序中,Recordset的状态是不可用的,调用Close当然出错啦!所以不用关闭。
改成:
m_pConnection->Execute("CREATE TABLE newBill(is_new INTEGER,bill_id CHAR(13))", &vtMissing , adCmdText);
//or
_CommandPtr pAdoCmd(__uuidof(Command));
pAdoCmd->ActiveConnection = m_pConnection;
pAdoCmd->CommandText = "CREATE TABLE newBill(is_new INTEGER,bill_id CHAR(13))";
pADoCmd->CommandType = adCmdText;
pAdoCmd->Execute(&vtMissing , &vtMissing , adCmdText);
Command 是用来执行SQL命令或Stored Procedures 的! Top
5 楼Miken(代码)回复于 2001-02-15 11:44:00 得分 0
zhq2000,谢了Top




