第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

sql server 自定義函數(shù)不支持動態(tài)sql怎么理解呢?

sql server 自定義函數(shù)不支持動態(tài)sql怎么理解呢?

拉丁的傳說 2019-02-13 15:11:29
sql server 自定義函數(shù)不支持動態(tài)sql怎么理解呢
查看完整描述

2 回答

?
慕勒3428872

TA貢獻1848條經(jīng)驗 獲得超6個贊

因為自定義函數(shù)是經(jīng)過建立的時候是編譯的,
所以像getdate()這些不確定因素的值,是隨時改變的,所以不允許

推薦:
將類似getdate()之類的可變的因素使用參數(shù)帶入進函數(shù)

執(zhí)行的時候,再使用getdate(),如:
select dbo.MyFunction(getdate()) from 表

舉個例子:
建立自定義函數(shù),如果今天是5號,字段1就等于字段2,否則還等于字段1
以下的寫法是錯誤的:

create function MyFunction(@字段1 int ,@字段2 int)
returns int
as
if day(getdate())=5
return @字段2
else return @字段1

這樣寫才是正確的:
create function MyFunction(@字段1 int ,@字段2 int,@date datetime)
returns int
as
if day(@date)=5
return @字段2
else return @字段1

調(diào)用時:
select 字段1,字段2,dbo.MyFunction(字段1,字段2,getdate()) from表



查看完整回答
反對 回復 2019-03-10
?
慕村225694

TA貢獻1880條經(jīng)驗 獲得超4個贊

SqlServer的自定義函數(shù)不能執(zhí)行insert、更新操作;不能使用動態(tài)sql。

可以考慮存儲過程。

查看完整回答
反對 回復 2019-03-10
  • 2 回答
  • 0 關(guān)注
  • 1358 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號