MFC中使用 SQLAPI
在这里插入代码片
#include <SQLAPI.h>
#pragma comment(lib, "sqlapiu.lib")
int main(int argc, char* argv[])
{
CString str;
SAString sHolder;
SAConnection con;
try
{
con.Connect((LPCTSTR)DBString, (LPCTSTR)UserId, (LPCTSTR)Password, SA_SQLServer_Client);
CString cstrSql;
cstrSql.Format(_T("Select *from student"));
SAString sql;
sql = (LPCTSTR)cstrSql;
SACommand select(&con, sql);
select.Execute();
while (select.FetchNext()) {
sHolder = select[_TSA("name")];
str = sHolder.GetWideChars();
s.name= CW2A(str);
sHolder = select[_TSA("subjects")];
str = sHolder.GetWideChars();
s.subjects= CW2A(str);
sHolder = select[_TSA("results")];
str = sHolder.GetWideChars();
s.score= _ttoi(str);
}
con.Disconnect();
}
catch (SAException &x)
{
return result;
}
catch (...)
{
return result;
}
return result;
}
//_TSA 宏 识别string 时需要转换成宽字节
1) 可以在sql中转换
cstrSql.Format(_T("Select [姓名] as name,[科目] as subjects,[成绩] as results FROM T_CAMS_Line"));
2)
CString columnName = _T("姓名");
sHolder = select[(LPCTSTR)columnName ];
str = sHolder.GetWideChars();
s.name = CW2A(str);