关于sqlserver的储存过程的杂记2009-12-18
2009-12-18 15:58
295 查看
declare @sql nvarchar(2000)
set @sql='select * into #temp1 from product'
exec(@sql)
select
*
from #temp1
这样在查询分析器中执行会报如下错误
(3274 行受影响)
消息208,级别16,状态0,第4 行
对象名'#temp1' 无效。
可以改用
declare @sql nvarchar(2000)
set @sql='select * into #temp1 from product select * from #temp1'
exec(@sql)
游标的效率不高,一般需要使用其这方式替代
下面这段代码是正确的
declare @productcode nvarchar(200)
set @productcode='00000001'
declare @productName nvarchar(2000)
select @productName=[ProductName] from product where productcode=@productcode
print @productName
--select @productName=productName from product where productcode=@productCode
if
exists(select [ProductName] from product where productcode=@productCode)
print @productName
else
print
'==='
但是如果改成这样就不行了
declare @productcode nvarchar(200)
set @productcode='00000001'
declare @productName nvarchar(2000)
select @productName=[ProductName] from product where productcode=@productcode
print @productName
if
exists(select @productName=productName from product where productcode=@productCode)
print @productName
else
print
'==='
想说明的是在exists含数中是不能使用@productName=productName的方式来赋值的
set @sql='select * into #temp1 from product'
exec(@sql)
select
*
from #temp1
这样在查询分析器中执行会报如下错误
(3274 行受影响)
消息208,级别16,状态0,第4 行
对象名'#temp1' 无效。
可以改用
declare @sql nvarchar(2000)
set @sql='select * into #temp1 from product select * from #temp1'
exec(@sql)
游标的效率不高,一般需要使用其这方式替代
下面这段代码是正确的
declare @productcode nvarchar(200)
set @productcode='00000001'
declare @productName nvarchar(2000)
select @productName=[ProductName] from product where productcode=@productcode
print @productName
--select @productName=productName from product where productcode=@productCode
if
exists(select [ProductName] from product where productcode=@productCode)
print @productName
else
'==='
但是如果改成这样就不行了
declare @productcode nvarchar(200)
set @productcode='00000001'
declare @productName nvarchar(2000)
select @productName=[ProductName] from product where productcode=@productcode
print @productName
if
exists(select @productName=productName from product where productcode=@productCode)
print @productName
else
'==='
想说明的是在exists含数中是不能使用@productName=productName的方式来赋值的
相关文章推荐
- 关于SQLServer建表过程中所报的类似"xx 附近有语法错误"
- sqlserver中几个 关于win系统的扩展存贮过程
- sqlserver储存过程和触发器
- 关于ODBC api 执行sqlserver存储过程的问题
- 关于sqlserver的存储过程简单介绍
- 关于SQL储存过程中输出多行数据
- Sqlserver 2008 通用分页储存过程
- Adodbapi调用sqlserver储存过程的问题及pymssql的使用2009-12-22
- 关于SQLSERVER 事物的运用(3)嵌套事物以及嵌套存储过程的异常的处理
- 关于SQLServer存储过程动态拼接,模糊查询的处理
- sqlserver关于分页存储过程的优化【让数据库按我们的意思执行查询计划】
- sqlserver关于分页存储过程的优化【让数据库按我们的意思执行查询计划】
- 关于用储存过程怎样实现模糊查询?
- msyql中关于触发器储存过程定时任务的简单例子
- SQLServer 获取所有数据库名、表名、储存过程以及参数列表
- GridView用储存过程做分页的完整C#代码
- SqlServer--将存储过程的结果集写入一张表中
- Quartz中关于cronExpression的使用过程
- 触发器和储存过程中错误处理