我将1,2,3,4,5,6,7,8,9存储为我的数据库中Level的nvarchar。
然后我有一个值为1,2,3,4,5,6,7,8,9的下拉列表。当用户进行选择时(即1)(Level.SelectedValue.ToString)。这通过像这样的参数构建一个sql查询:
"Select things From MBA_EOI Where level = 1"
当我运行选择时,我收到以下错误:
Syntax error converting the nvarchar value '1,2,3,4,5,6,7,8,9' to a column of data type int.
我的印象是我正在处理Nvarchar字段并将所选值作为字符串,int转换在哪里进来?
p.s我也尝试过Level.SelectedItem.ToString
答案 0 :(得分:5)
通过包含level = 1
,你暗示SQL需要进行数值比较,并且它试图将所有列值转换为int。如果您使用的是level = '1'
,则会获得没有转化的文字比较。