при разборе запроса произошла ошибка - PullRequest
0 голосов
/ 09 декабря 2011

ошибка:

[token line number = 1,token line offset = 15,token in error = %]

мой код:

 SqlCeCommand cmd = con.CreateCommand();
 cmd.Connection = con;
 cmd.CommandText = "select emails from contacts where name like %@name";
 cmd.Parameters.AddWithValue("@name", name);
 SqlCeDataReader data = cmd.ExecuteReader();
 //.. 

Я полагаю, это потому, что @name в запросе. Я тоже пробовал: select emails from contacts where name like '%@name'

как мне это исправить? Спасибо!

Ответы [ 2 ]

2 голосов
/ 09 декабря 2011

Вам нужно скрыть % от парсера SQL, потому что он является частью строкового литерала:

SqlCeCommand cmd = con.CreateCommand();
cmd.Connection = con;
cmd.CommandText = "select emails from contacts where name like @name";
cmd.Parameters.AddWithValue("@name", "%"+name);
SqlCeDataReader data = cmd.ExecuteReader();
1 голос
/ 09 декабря 2011

Вы должны попробовать это:

select emails from contacts where name like '%'+@name
...