最近在用MFC做数据库的课程设计,要把一个时间(datetime类型)输出到一个 list ctr,程序如下,sql语句是正确的,这个可以确定,但是就是在输出的时候报错:“超出数值范围”,“state:22003O ,Native:0,rigin:[Microsoft][ODBC SQL server driver].”
请问各位如何解决
谢谢大家!void CReaderMan::Onsearchborr()
{
// TODO: Add your control notification handler code here
CString sql;
CDStrs attFields;
sql.Format("select book_info.isbn,book_info.name,book_info.autor,"
"book_info.press , borrow_info.borrowtime "
" from book_info, borrow_info where"
" card_NO = '%s' and book_info.isbn = borrow_info.isbn "
"and returnornot = 0", liabNO);
g_odbcDB.ExecuteQuery(sql, attFields);//就这个地方处问题
m_listbook2.DeleteAllItems();
for(int i=0;i<attFields.size();i++)
{
CStrs strs = attFields[i];
InsertDataToList2(m_listbook2,strs[0],strs[1],strs[2],strs[3],strs[4]);//这个地方也是怀疑,但是我不确定,这个函数应该没有问题
}
}
请问各位如何解决
谢谢大家!void CReaderMan::Onsearchborr()
{
// TODO: Add your control notification handler code here
CString sql;
CDStrs attFields;
sql.Format("select book_info.isbn,book_info.name,book_info.autor,"
"book_info.press , borrow_info.borrowtime "
" from book_info, borrow_info where"
" card_NO = '%s' and book_info.isbn = borrow_info.isbn "
"and returnornot = 0", liabNO);
g_odbcDB.ExecuteQuery(sql, attFields);//就这个地方处问题
m_listbook2.DeleteAllItems();
for(int i=0;i<attFields.size();i++)
{
CStrs strs = attFields[i];
InsertDataToList2(m_listbook2,strs[0],strs[1],strs[2],strs[3],strs[4]);//这个地方也是怀疑,但是我不确定,这个函数应该没有问题
}
}
是sql command 写错还是其他问题?