0

在我的表中,一些记录已经存储在两列中First_Name,并且Last_Name.

Ravi Kant | Sharma

Raj  | Kumar

Ravi | Anupam

Abhinav | Kumar

Ashish | Kumar

Avinash | a

Ravi | Anand

我的搜索文本框名称是txtName,我在其中输入了ravi。现在,我正在使用查询

SELECT * FROM USER_INFO 
WHERE FIRST_NAME LIKE '%"& txtName.Text &"%' 
OR LAST_NAME LIKE '%"& txtName.Text &"%'

所以,它应该检索所有 cantains 的记录ravi

但是,它只返回 First Name 为 的表中的两行Ravi。但是,我希望它应该返回包含该字符的所有记录,这意味着它必须返回 3 行。

需要帮忙 !!

已编辑

"SELECT * FROM JOBS WHERE (JOB_DESCRIPTION LIKE '%" & keyword.Trim() & "%' OR JOB_SKILL LIKE '%" & keyword.Trim() & "%' OR JOB_QUALIFICATION LIKE '%" & keyword.Trim() & "%') AND JOB_ROLE='" & profile & "'"

这是我的查询,我想在其中使用上述概念。

4

1 回答 1

1

(虽然您的解决方案有 SQL 注入 - 就像我的朋友在这里所说的...... [使用参数])

var myQuery=@"SELECT * FROM USER_INFO 
    WHERE FIRST_NAME LIKE '%"+txtName.Text.Trim() +@"%' 
    OR LAST_NAME LIKE '%"+txtName.Text.Trim() +"%'";

无 SQlInjection ver : (SQL SERVER SIDE)

SELECT * FROM USER_INFO 
WHERE FIRST_NAME LIKE '%'+@txtName +'%' 
OR LAST_NAME LIKE '%'+@txtName +'%'

@txtNamenvarchar(100)// 或者别的什么...

于 2012-04-07T14:11:46.553 回答