Exec执行拼接字符串时遇到的问题及Sql执行函数时需要注意的事项

1.在程序中直接使用

sqlStr = 'AppliantType=''请假'''
string sql= "Exec('select * from TableName where " + sqlStr + "')";

SQL如果直接set @StepCondition 用法类同
declare @StepCondition nvarchar(200)
set @StepCondition = 'AppliantType=''请假'''
Exec('select * from TableName where' + @StepCondition)

但是 @StepCondition 如果是存入字段中取出再用的话
就不能存AppliantType=''请假'' 而要存 AppliantType='请假'
注意引号

 

2.例如有个函数[dbo].[f_compare],可以用Select 或Set赋值,但是调用时要加上dbo.,否则会识别不出来


/**********取反及^符号出现的结果**************/
declare @CycleYear int
set @CycleYear =1
set @CycleYear = -@CycleYear --取反
print @CycleYear -- -1
set @CycleYear =5
set @CycleYear = @CycleYear^2 -- +2
print @CycleYear --7
set @CycleYear = @CycleYear^2 -- -2
print @CycleYear -- 5
set @CycleYear = @CycleYear^2 -- +2
print @CycleYear -- 7

转载于:https://www.cnblogs.com/mamaxiaoling/p/10059432.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值