Lam*_*fif -1 sql vb.net sql-server ado.net sql-server-2008
我在SQL Server 2008数据库中有这个表值函数:
Create FUNCTION dbo.fct1(@Code varchar(10) )
RETURNS TABLE
AS
RETURN
(
select CODE , NOM
from CODIF
where NUMERO = 'TP'
and CODE = @Code
)
Run Code Online (Sandbox Code Playgroud)
当我从我的代码中调用它时:
sSQL = "select * from fct1(" & Code & ")"
Dim cmd As New SqlCommand(sSQL, Connection)
If Connection.State <> ConnectionState.Open Then Connection.Open()
Dim rd As SqlClient.SqlDataReader
rd = cmd.ExecuteReader()
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
列名无效:'EA2'
我需要知道 :
你错过'了sql.
你可能应该参数化SQL并尝试使用:
using conn as new sqlconnection(connstring), comm as new sqlcommand("",conn)
conn.open()
comm.commandtype = commandtype.text
comm.commandtext = "select * from fct1(@Code)"
comm.parameters.addwithvalue("@Code",Code)
Dim rd as sqldatareader = comm.executedatareader
end using
Run Code Online (Sandbox Code Playgroud)
祝好运.
保罗
| 归档时间: |
|
| 查看次数: |
145 次 |
| 最近记录: |