大家帮我改下,初次写这些东西,不懂呀。
create proc um_qing2 @kk varchar(50),@dian varchar(50)
as
Set NoCount On
select * from tab_he where 'kk' like '%'+@dian+'%'
Set NoCount Off
go
上面的where 'kk' like这时应该是写错了,但我不知道怎么写。
还有,在VB里调用这个过程,查找字段名“名称”=“广州”的记录:
Set rs1 = cn.Execute("qing1", 名称, 广州)
也错了,不知怎么写,指点一下
create proc um_qing2 @kk varchar(50),@dian varchar(50)
as
Set NoCount On
select * from tab_he where 'kk' like '%'+@dian+'%'
Set NoCount Off
go
上面的where 'kk' like这时应该是写错了,但我不知道怎么写。
还有,在VB里调用这个过程,查找字段名“名称”=“广州”的记录:
Set rs1 = cn.Execute("qing1", 名称, 广州)
也错了,不知怎么写,指点一下
set @sql='select * from tab_he where '+@kk+' like ''%'+@dian+'%'''
exec @sql
Execute um_qing6 '名称','广州'
出错提示:
未能找到存储过程 'select * from tab_he where 名称 like '%广州%''。
create proc um_qing2 @kk varchar(50),@dian varchar(50)
as
Set NoCount On
declare @sql varchar(200)
set @sql='select * from tab_he where ' + @kk + ' like ''%'' + @dian + ''%'''
exec @sql
Set NoCount Off
--vb中代码
Set rs1 = cn.Execute("um_qing2", "名称", "广州")
如果写成:
Dim sql As String
sql = "um_qing2 '名称', '广州'"
Set rs1 = cn.Execute(sql)
没找到存储过程'select * from tab_he where 名称 like '%'+@dian+'%''
@kk VARCHAR(50),
@dian VARCHAR(50)
AS
SET NOCOUNT ON
DECLARE @sql VARCHAR
SET @sql='SELECT * FROM tab_he WHERE ' + @kk + ' LIKE ''%'' + @dian + ''%'''
EXEC @sql
SET NOCOUNT OFF
VB:dim adoCmd as ADODB.Command
dim adoRs as ADODB.Recordset
set adoCmd=new ADODB.Command
adoCmd.ConnectionString=connectionString
adoCmd.CommandText="um_qing2";
adoCmd.CommandType=adCmdStoredProc
adoCmd.Parameters.Append adoCmd.CreateParameter("@KK",adVarChar,adParamInput,50,"名称")
adoCmd.Parameters.Append adoCmd.CreateParameter("@DIAN",adVarChar,adParamInput,50,"广州")
adoCmd.Prepared = True
set adoRs=adoCmd.Execute
SQL:
create proc um_qing2 @kk varchar(50),@dian varchar(50)
as
Set NoCount On
declare @sql varchar(200)
set @sql='select * from tab_he where ' + @kk + ' like ''%'' + @dian + ''%'''
exec @sql
Set NoCount Offvb:
Set rs2 = New ADODB.Recordset
Set cmd = New ADODB.Command
cmd.ActiveConnection = cn
cmd.CommandText = "um_qing2"
cmd.CommandType = adCmdStoredProc
cmd.Parameters("@kk") = "名称"
cmd.Parameters("@dian") = "广州"
Set rs2 = cmd.Execute结果:没找到存储过程'select * from tab_he where 名称 like '%'+@dian+'%''
完全没问题~!这句有没有问题:
set @sql='select * from tab_he where ' + @kk + ' like ''%'' + @dian + ''%'''
as
Set NoCount On
DECLARE @SQL NVARCHAR(4000)
SET @SQL=N' SELECT * FROM tab_he WHERE ' + @kk + ' like %' + "'" + @dian + "%'"
EXEC sp_executesql @SQL
Set NoCount Off
go
SET @SQL=N' SELECT * FROM tab_he WHERE ' + @kk + ' like ' + "'%" + @dian + "%'"