当前位置:首页 » 编程语言 » mfcsql查询

mfcsql查询

发布时间: 2023-01-07 08:29:08

1. vc6 mfc sql怎样设置关键词查询,根据关键词确定要查询的问题

GetDlgItem(IDC_EDIT1)->GetWindowText(str);//得到输入的问题
strSql.Format("select answer from shuju where question like'%%%s%%'",str);
这是我的程序里的语句,他能实现模糊查询,
但是我数据库里的问题是今天天气如何,如果在对话框中输入 天气怎么样,或者今天天气咋样,就不能出来答案。希望朋友们帮帮忙!谢谢!

2. MFC对话框界面, 查询sql数据库计算百分比,将结果显示在list control中


class DBConnection
{
public:
DBConnection(void);
~DBConnection(void);
int OpenConnect(void);
int ExecuteSQL(_bstr_t strCmd);
_RecordsetPtr GetRecondSetPrt();
private:
_ConnectionPtr m_pConnection; //链接数据库德指针变量
_RecordsetPtr m_pRecordset; //指向记录集的指针
_variant_t RecordsAffected; //受影响的记录条数
};

DBConnection::DBConnection(void)
{
m_pConnection=NULL;
m_pRecordset=NULL;
}

DBConnection::~DBConnection(void)
{
m_pConnection=NULL;
m_pRecordset=NULL;
}

//打开数据库链接
int DBConnection::OpenConnect(void)
{
try
{
//创建连接对象
m_pConnection.CreateInstance("ADODB.Connection");

//设置连接字符串

_bstr_t strConnect ="Provider=SQLOLEDB;Data Source=20110121-1545\\SQLEXPRESS;\
Initial Catalog=ExpManDB;User ID=sa;PWD=123";

//设置连接超时时间为5秒
m_pConnection->ConnectionTimeout = 5;

//连接数据库
m_pConnection->Open(strConnect, "", "", adModeUnknown);
return 1;

}
catch(_com_error e)
{
CString errorMsg;
errorMsg.Format(_T("连接数据库失败!\r错误信息:%s"),(LPCSTR)e.ErrorMessage());
AfxMessageBox(errorMsg);
return 0;
}
}

//返回受影响的记录条数
int DBConnection::ExecuteSQL(_bstr_t strCmd)
{
if(m_pConnection->State)
{
try
{
m_pRecordset.CreateInstance("ADODB.Recordset"); //为Recordset对象创建实例
//执行SQL语句,并返回受影响的记录条数
m_pRecordset=m_pConnection->Execute(strCmd,&RecordsAffected,adCmdText);
return RecordsAffected.intVal;
}
catch(_com_error &e)
{
AfxMessageBox(e.Description());
return 0;
}
}
return 0;
}

//返回记录集以便后续使用
_RecordsetPtr DBConnection::GetRecondSetPrt()
{
return m_pRecordset;
}
可以像这样使用,strCmd为sql语句
DBConnection dbConnector;
if(dbConnector.OpenConnect() == 0)
{
return;
}
if(dbConnector.ExecuteSQL((_bstr_t)strCmd) == 0)
{
return;
}
当然如果你还需要取出数据的时候可以这样用
_RecordsetPtr pRecordSet;
pRecordSet=dbConnector.GetRecondSetPrt();
_variant_t vCardNo;
vCardNo = pRecordSet->GetCollect("cardNO"); //得到数据表种cardNO字段
后面_variant_t类型就可以转换为int float CString等各种类型了。
如果有什么问题再交流。

3. mfc 中 用SQL查询数据库时无结果

strSQL.Format("SELECT * from BookInfo where %s = '%s'",name,temp); // BID 不需要 ' ' 进行包含

4. MFC中的SQL查询语句返回空就报错怎么办

我也遇到过你这样的问题哦,
其实挺简单的,你如果不想报错,就要把数据库中
该列的NULL去掉,什么都不写就是,MFC中在读的时候,碰不到NULL,
它会什么都不显示,相当于_T(""),也就是读到列表控件中“sex”这列什么都没的。
试试吧,实在要留下NULL,也有判断的办法,我找到过,嫌麻烦没用它,这个需要你去搜搜

5. VC++ MFC 的一个SQL查询语句

CADODatabase m_DBCn;//数据库对象
CADORecordset m_Rs;//记录集对象
在头文件里
public:
CADORecordset m_Rs;//新增变量
CADODatabase m_DBCn;//新增变量

CDataGRid m_datagrid;//DataGrid控件对象
...
CString m_adodc; m_adodc.Format(_T("Provider=Microsoft.Jet.OLEDB.4.0;")
_T("Data Source=note.mdb"));
m_DBCn.Open((LPCTSTR)m_adodc); //打开程序数据库
m_Rs.SetDatabase(&m_DBCn); m_Rs.Open(_T("select * from list where id=1;")); //执行查询
m_datagrid.SetRefDataSource((LPUNKNOW)m_Rs.GetRecordset());//显示在DataGrid控件中

6. MFC从SQL里查询表中字段怎么查

获取所有字段名:
Select Name FROM SysColumns Where id=Object_Id('TableName')

热点内容
平板如何关掉appstore密码 发布:2025-07-08 00:59:17 浏览:404
安卓版轩辕剑剑之源哪里下载 发布:2025-07-08 00:55:06 浏览:675
安卓的软件怎么关闭 发布:2025-07-08 00:53:38 浏览:777
html5整站源码 发布:2025-07-08 00:36:01 浏览:943
sql创建链接 发布:2025-07-08 00:08:38 浏览:398
ftp上传中断 发布:2025-07-08 00:08:37 浏览:641
linux云计算课程 发布:2025-07-08 00:07:23 浏览:23
安卓网易云怎么发布歌曲 发布:2025-07-07 23:42:29 浏览:626
安卓内存读取脚本 发布:2025-07-07 23:42:19 浏览:872
python27汉化 发布:2025-07-07 23:42:18 浏览:722