LIKE 运算符的查询字符串生成器
Query string builder for LIKE operator
我尝试搜索查询以返回存储在数据库中的用户名。但是,到目前为止,我无法得到答案。所以在这里,我正在寻求你的帮助。
我有一个 MFC 对话框,其中有一个用于输入用户名的编辑控件和一个查询数据库数据的搜索按钮。我只需要检索那些与 dit 控件中的字符串匹配的用户名。
假设有两条记录的用户名为 Sagar
和 Sachin
。因此,如果我在用户名编辑控件中仅输入"s"
,则搜索按钮事件应检索Sagar
和sachin
的数据。
幸运的是,我有一个在访问数据库中运行良好的查询,但不知道如何在 MFC 应用程序中构建和格式化查询。我可以在访问数据库中运行的查询是:
select * from USERINFO where Username LIKE [a-z]&"*"
请帮助我在单击搜索按钮时在MFC对话框应用程序中构建和格式化查询。
这是代码:
list<CUserProperties> CUserOperations::SearchUserDetails(CString sUserName, CString sLastName)
{
list<CUserProperties> listUserProps;
m_sFunctionName = L"SearchUserDetails";
try
{
if (sUserName.Trim().IsEmpty() && sLastName.Trim().IsEmpty())
{
m_sQuery.Format(_T("SELECT USER_ID, USERNAME, ROLE, FIRSTNAME, LASTNAME, PASSWORD, CONFIRMPASSWORD FROM USERINFO"));
}
else if (sUserName.Trim().IsEmpty() && (!(sLastName.Trim().IsEmpty())))
{
m_sQuery.Format(_T("SELECT USER_ID, USERNAME, ROLE, FIRSTNAME, LASTNAME, PASSWORD, CONFIRMPASSWORD FROM USERINFO WHERE LASTNAME = '%s'"), sLastName);
}
else if (sLastName.Trim().IsEmpty() && (!(sUserName.Trim().IsEmpty())))
{
m_sQuery.Format(_T("SELECT USER_ID, USERNAME, ROLE, FIRSTNAME, LASTNAME, PASSWORD, CONFIRMPASSWORD FROM USERINFO WHERE USERNAME = '%s'"), sUserName);
}
else
{
m_sQuery.Format(_T("SELECT USER_ID, USERNAME, ROLE, FIRSTNAME, LASTNAME, PASSWORD, CONFIRMPASSWORD FROM USERINFO WHERE USERNAME = '%s' AND LASTNAME = '%s'"), sUserName, sLastName);
}
listUserProps = m_dbOperations.SelectUserDataFromDB(m_sFunctionName, m_sQuery);
}
catch (...)
{
AfxMessageBox(m_sFunctionName + L": Exception occured");
}
return listUserProps;
}
据我了解,您可能需要这样的东西:
CString username;
// Your code: obtain typed username into username
CString querystring;
querystring.Format(_T("select * from USERINFO where Username LIKE '%s%%'"), username);
// perform your query using querystring here
相关文章:
- 使用 C++ 查询 MongoDB 的日期字符串
- 具有二叉索引树的字符串查询
- 检查从查询返回的任何行是否包含在字符串中的最高性能方法?
- 快速JSON如何使用字符串变量查询对象
- C++字符串流连接查询
- 用于检查字符串是否等效的查询
- 如何用C++解析url查询字符串
- 关于在C++中将数据从字符串转换为浮点值的查询
- 宽字符串 SQLite 查询 C++
- std::字符串在迭代 mySQL 连接器查询结果时崩溃
- LIKE 运算符的查询字符串生成器
- C++查询字符串的所有值连接成一个字符串
- 使用 SQL Server 和 Oracle 中的字符串使用相同的未修改查询进行连接
- 具有前缀和后缀查询的字符串集合的数据结构
- MySQL C++连接器使用SELECT查询获取字符串
- 如何使用tinyxml2查询字符串属性
- Cassandra cppdriver查询字符串缓冲区溢出
- Mysql查询字符串在查询c++中不工作
- 如何在SQL查询中插入字符串
- ISO货币字符串查询窗口