开发者

Syntax error converting the nvarchar value to a column of data type int

I have 1,2,3,4,5,6,7,8,9 stored as nvarchar inside Level in my db.

I then have a dropdownlist with values 1,2,3,4,5,6,7,8,9. When a user makes a selection (i.e 1) (Level.SelectedValue.ToString). This builds an sql query via a param like this:

"Select things From MBA_EOI Where level = 1"

When I run the select I get the following error:

Syntax error converting the nvarchar value '1,2,3,4,5,6,7,8,9' to a column of data开发者_JAVA技巧 type int.

I was under the impression that I was dealing with an Nvarchar field and the selected value as string, where does the int conversion come in?

p.s I have also tried Level.SelectedItem.ToString


By including level = 1 you are implying to SQL that you want a numeric comparison, and it's attempting to cast all the column values to ints. If you used level = '1' instead, you'd get a text comparison with no conversion.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜