当我运行我的代码时,我收到此错误:
无法在System.Int32和System.String
上执行'Like'操作
我需要一种方法来允许int和varchar但是却无法想到它的解决方案。我理解这是因为我的id选项是一个整数,但不能想到一个解决方案,真的很感谢你的帮助。
Public Class _Default
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
End Sub
Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim FilterExpression As String = String.Concat(DropDownList1.SelectedValue, " LIKE " + "'%{0}%'")
SqlDataSource1.FilterParameters.Clear()
SqlDataSource1.FilterParameters.Add(New ControlParameter(DropDownList1.SelectedValue, "TextBox1", "Text"))
SqlDataSource1.FilterExpression = FilterExpression
End Sub
End Class
答案 0 :(得分:1)
根据定义,LIKE是一个字符串运算符。
我建议您需要重新考虑您的设计,但如果您决定使用" LIKE"来搜索数字,则应该有一个触发器填充该字段的varchar()版本在表中。
答案 1 :(得分:0)
您使用的是哪个版本的SQL Server?根据SPROC或TSQL中的版本,您可以在数据上运行丰富的命令来操作它,就像您可能需要它一样。一个很好的例子。
Select TRY_CONVERT(STRING, 12065) is Null