存储过程就好比是多个SQL语句的组合,不过里面还可以判断等一些操作。是用单独的SQL语句实现不了的。。
楼主的这不对:select * from table where lie like '@guanjianzi'
@guanjianzi是变量,如果加上单引号。就相当于字符了
应该exec('select * from table where lie like '+@guanjianzi+''')
楼主的这不对:select * from table where lie like '@guanjianzi'
@guanjianzi是变量,如果加上单引号。就相当于字符了
应该exec('select * from table where lie like '+@guanjianzi+''')
exec ('select * from table where lie like ''%'+@guanjianzi+'%''')
返回代码,始终是整型值。
SELECT 语句的结果集,这些语句包含在该存储过程内或该存储过程所调用的任何其它存储过程内。
可从存储过程外引用的全局游标。
exec ('select * from table where like patindex(''%'''+@guanjianzi+'''%'',lie)>0')
在把这些语句放到存储过程里使用存储过程会有很多好处
存储过程可以使得对数据库的管理、以及显示关于数据库及其用户信息的工作容易得多。存储过程是 SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理。存储过程存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量、有条件执行以及其它强大的编程功能。存储过程可包含程序流、逻辑以及对数据库的查询。它们可以接受参数、输出参数、返回单个或多个结果集以及返回值。 可以出于任何使用 SQL 语句的目的来使用存储过程,它具有以下优点: 可以在单个存储过程中执行一系列 SQL 语句。
可以从自己的存储过程内引用其它存储过程,这可以简化一系列复杂语句。
存储过程在创建时即在服务器上进行编译,所以执行起来比单个 SQL 语句快。