久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

sql server關于函數中如何使用Getdate()

瀏覽:137日期:2023-10-29 11:21:31

create view v_getdateasselect getdate() [output]go---------------------------------------------------------------create function f_getdate()returns datetimeasbegindeclare @n datetimeselect @n = output from v_getdatereturn(@n)endgo---------------------------------------------------------------

調用:select dbo.f_getdate()

======================================================================-----以下是解析--------應為function內部不允許使用函數可以是確定的或不確定的。如果任何時候用一組特定的輸入值調用函數時返回的結果總是相同的,則這些函數為確定的。如果每次調用函數時即使用的是相同的一組特定輸入值,返回的結果總是不同的,則這些函數為不確定的。

不確定的函數會產生副作用。副作用是更改數據庫的某些全局狀態,比如更新數據庫表或某些外部資源,如文件或網絡等(例如,修改文件或發送電子郵件消息)。

不允許在用戶定義函數主體中內置不確定函數;這些不確定函數如下:

@@CONNECTIONS @@TOTAL_ERRORS @@CPU_BUSY @@TOTAL_READ @@IDLE @@TOTAL_WRITE @@IO_BUSY GETDATE @@MAX_CONNECTIONS GETUTCDATE @@PACK_RECEIVED NEWID @@PACK_SENT RAND @@PACKET_ERRORS TEXTPTR @@TIMETICKS

盡管在用戶定義函數主體中不允許有不確定函數,這些用戶定義函數在調用擴展存儲過程時仍會產生副作用。

由于擴展存儲過程會對數據庫產生副作用,因此調用擴展存儲過程的函數是不確定的。當用戶定義函數調用會對數據庫產生副作用的擴展存儲過程時,不要指望結果集保持一致或執行函數。

標簽: Sql Server 數據庫
主站蜘蛛池模板: 双峰县| 肃北| 安康市| 塘沽区| 汉源县| 望奎县| 侯马市| 宁陕县| 湾仔区| 志丹县| 榕江县| 会昌县| 吴旗县| 仁寿县| 晴隆县| 白沙| 汾阳市| 崇信县| 诸暨市| 张家口市| 海门市| 施甸县| 通许县| 丹东市| 土默特左旗| 巧家县| 万年县| 康乐县| 斗六市| 沽源县| 营山县| 启东市| 图木舒克市| 西城区| 浮山县| 浏阳市| 自治县| 图们市| 三亚市| 绵阳市| 甘洛县|