freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[工學(xué)]第9章transact-sql程序設(shè)計(編輯修改稿)

2025-02-15 12:07 本頁面
 

【文章內(nèi)容簡介】 函數(shù) 例 914 使用 datediff函數(shù)來確定貨物是否按時送給客戶。 SELECT goods_id,datediff(dd,send_date,arrival_date) FROM purchase_order ?為了從 datediff中得到一個正值,應(yīng)注意把較早的日期放在前面 常用函數(shù) 例 915 使用 datename函數(shù)返回員工的出生日期的月份 (mm)名稱。 SELECT employee_name,datename(mm,birth_date) FROM employee ? 運行結(jié)果如下: 錢達理 December 東方牧 April 郭文斌 March 肖海燕 July 張明華 August 常用函數(shù) 4.系統(tǒng)函數(shù) ?系統(tǒng)函數(shù)用于獲取有關(guān)計算機系統(tǒng)、用戶、數(shù)據(jù)庫和數(shù)據(jù)庫對象的信息。與其他函數(shù)一樣,可以在 SELECT和 WHERE子句以及表達式中使用系統(tǒng)函數(shù)。 ?表 911列出了 SQL Server的系統(tǒng)函數(shù)。 常用函數(shù) 例 916 使用 object_name函數(shù)返回已知 ID號的對象名。 SELECT object_name(469576711) ?運行結(jié)果如下: Employee 常用函數(shù) 例 917 利用 object_id函數(shù),根據(jù)表名返回該表的 ID號。 SELECT name FROM sysindexes WHERE id=object_id(39。customer39。) ?運行結(jié)果如下: name customer _WA_Sys_customer_id_75D7831F 函 數(shù) 用戶定義函數(shù) 根據(jù)函數(shù)返回值形式的不同將用戶定義函數(shù)分為 3種類型。 (1) 標(biāo)量函數(shù) 標(biāo)量函數(shù)返回一個確定類型的標(biāo)量值,其函數(shù)值類型為 SQL Server的系統(tǒng)數(shù)據(jù)類型(除 text、 ntext、 image、 cursor、timestamp、 table類型外)。函數(shù)體語句定義在 BEGIN…END 語句內(nèi)。 (2) 內(nèi)嵌表值函數(shù) 內(nèi)嵌表值函數(shù)返回的函數(shù)值為一個表。內(nèi)嵌表值函數(shù)的函數(shù)體不使用 BEGIN…END 語句,其返回的表是 RETURN子句中的SELECT命令查詢的結(jié)果集,其功能相當(dāng)于一個參數(shù)化的視圖。 (3) 多語句表值函數(shù) 多語句表值函數(shù)可以看作標(biāo)量函數(shù)和內(nèi)嵌表值函數(shù)的結(jié)合體。其函數(shù)值也是一個表,但函數(shù)體也用 BEGIN…END 語句定義,返回值的表中的數(shù)據(jù)由函數(shù)體中的語句插入。 用戶定義函數(shù) 1. 創(chuàng)建用戶定義函數(shù) (1) 使用 CREATE FUNCTION創(chuàng)建用戶定義函數(shù) ? 標(biāo)量函數(shù)的語法格式: CREATE FUNCTION [owner_name.] function_name ( [{ @parameter_name [AS] scalar_parameter_data_type[=default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type [ WITH function_option [ [,] ...n] ] [ AS ] BEGIN function_body RETURN scalar_expression END 用戶定義函數(shù) 內(nèi)嵌表值函數(shù)的語法格式: CREATE FUNCTION [owner_name.] function_name ( [{@parameter_name [AS] scalar_parameter_data_type [=default ] } [ ,...n ] ] ) RETURNS TABLE [ WITH function_option [ [,] ...n ] ] [ AS ] RETURN [ ( ] select_stmt [ ) ] 用戶定義函數(shù) 多語句表值函數(shù)的語法格式: CREATE FUNCTION [owner_name.] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS @return_variable TABLE table_type_definition [ WITH function_option [ [,] ...n ] ] [ AS ] BEGIN function_body RETURN END 用戶定義函數(shù) 例 918 創(chuàng)建一個用戶定義函數(shù) DatetoQuarter,將輸入的日期數(shù)據(jù)轉(zhuǎn)換為該日期對應(yīng)的季度值。如輸入39。20228539。,返回 39。3Q202239。,表示 2022年 3季度。 CREATE FUNCTION DatetoQuarter(@dqdate datetime) RETURNS char(6) AS BEGIN RETURN(datename(q,@dqdate)+39。Q39。+datename(yyyy,@dqdate)) END 用戶定義函數(shù) 例 919 創(chuàng)建用戶定義函數(shù) goodsq,返回輸入商品編號的商品名稱和庫存量。 CREATE FUNCTION goodsq(@goods_id varchar(30)) RETURNS TABLE AS RETURN(SELECT goods_name,stock_quantity FROM goods WHERE goods_id =@goods_id) 用戶定義函數(shù) 例 920 根據(jù)輸入的訂單編號,返回該訂單對應(yīng)商品的編號、名稱、類別編號、類別名稱。 CREATE FUNCTION good_info(@in_o_id varchar(10)) RETURNS @goodinfo TABLE (o_id char(6), g_id char(6), g_name varchar(50), c_id char(6), c_name varchar(20)) AS BEGIN DECLARE @g_id varchar(10),@g_name varchar(30) DECLARE @c_id varchar(10),@c_name varchar(30) SELECT @g_id=goods_id FROM sell_order WHERE order_id1=@in_o_id SELECT @g_name=goods_name,@c_id=classification_id FROM goods WHERE goods_id=@g_id SELECT @c_name=classification_name FROM goods_classification WHERE @c_id=classification_id INSERT @goodinfo VALUES(@in_o_id,@g_id,@g_name,@c_id,@c_name) RETURN END 用戶定義函數(shù) 在 SQL Server管理平臺中選擇要創(chuàng)建用戶定義函數(shù)的數(shù)據(jù)庫(如 Sales),在數(shù)據(jù)庫對象“函數(shù)”項上單擊右鍵,從彈出的快捷菜單中選擇“新建” → “內(nèi)嵌表值函數(shù)”選項,出現(xiàn)如圖所示的“用戶定義函數(shù)屬性”編輯框。 ( 2)使用 SQL Server管理平臺創(chuàng)建用戶定義函數(shù) 用戶定義函數(shù) 在“用戶定義函數(shù)屬性” 編輯框的文本框中指定函數(shù)名稱(如 numtostr),編寫函數(shù)的代碼。執(zhí)行代碼后,將用戶定義函數(shù)對象添加到數(shù)據(jù)庫中。 用戶定義函數(shù) 2. 執(zhí)行用戶定義函數(shù) ? 使用函數(shù)需要指出函數(shù)所有者,即為函數(shù)加上所有者權(quán)限作為前綴。其語法格式如下: [database_name.] ([argument_expr] [, ...] ) 用戶定義函數(shù) 例如,調(diào)用例 918創(chuàng)建的用戶定義函數(shù)DatetoQuarter SELECT (39。20228539。) 運行結(jié)果為: 3Q2022 ? 調(diào)用例 920創(chuàng)建的用戶定義函數(shù) good_info,使用以下語句: SELECT * FROM (39。S0000239。) 運行結(jié)果為表的記錄,如圖 93所示。 用戶定義函數(shù) 3. 修改和刪除用戶定義函數(shù) ? 用 SQL Server管理平臺中修改用戶定義函數(shù),選擇要修改函數(shù),單擊右鍵,從快捷菜單中選擇“修改”選項,打開圖 92所示的“用戶定義函數(shù)屬性”編輯框。在該對話框中可以修改用戶定義函數(shù)的函數(shù)體、參數(shù)等。從快捷菜單中選擇“刪除”選項,則可刪除用戶定義函數(shù)。 ? 用 ALTER FUNCTION命令也可以修改用戶定義函數(shù)。此命令的語法與 CREAT FUNCTION相同,使用 ALTER FUNCTION命令相當(dāng)于重建一個同名的函數(shù)。 ? 使用 DROP FUNCTION命令刪除用戶定義函數(shù),其語法如下: DROP FUNCTION { [ owner_name .] function_name } [ ,...n ] 其中, function_name是要刪除的用戶定義的函數(shù)名稱。 用戶定義函數(shù) 例如,刪除例 918創(chuàng)建的用戶定義函數(shù) DROP FUNCTON DatetoQuarter ?刪除用戶定義函數(shù)時,可以不加所有者前綴。 程序控制流語句 語句塊和注釋 選擇控制 循環(huán)控制 批處理 程序控制流語句 語句塊和注釋 ? TransactSQL提供了控制流語言的特殊關(guān)鍵字和用于編寫過程性代碼的語法結(jié)構(gòu),可進行順序、分支、循環(huán)、存儲過程、觸發(fā)器等程序設(shè)計,編寫結(jié)構(gòu)化的模塊代碼,并放置到數(shù)據(jù)庫服務(wù)器上。 語句塊和注釋 ? BEGIN...END用來設(shè)定一個語句塊,將在BEGIN...END內(nèi)的所有語句視為一個邏輯單元執(zhí)行。 ? 語句塊 BEGIN...END的語法格式為: BEGIN { sql_statement | statement_block } END 1. 語句塊 BEGIN...END 語句塊和注釋 USE Sales GO DECLARE @linkman_name char(8) BEGIN SELECT @linkman_name=(SELECT linkman_name FROM customer WHERE customer_id LIKE 39。C000139。) SELECT @linkman_name END 本例中, BEGIN…END 將兩個 SELECT語句組合成一個語句塊,用于給 @linkman_name變量賦值和顯示。 例 921 顯示 Sales數(shù)據(jù)庫中 customer表的編號為 39。C000139。的聯(lián)系人姓名。 語句塊和注釋 在 BEGIN...END中可嵌套另外的BEGIN...END來定義另一程序塊。 例 922 語句塊嵌套舉例。 DECLARE @errorcode int,@nowdate dateTIME BEGIN SET @nowdate=getdate() INSERT sell_order(order_date,send_date,arriver_date,custom_id) VALUES(@nowdate,@nowdate+5,@nowdate+10,39。C000239。) SELECT @errorcode=@@error IF @errorcode0 BEGIN RAISERROR(39。當(dāng)表 sell_order插入數(shù)據(jù)時發(fā)生錯誤 !39。,16,1) RETURN END 語句塊和注釋 2. 注釋 ?有兩種方法來聲明注釋: ?單行注釋 ?多行注釋。 語句塊和注釋 ( 1)單行注釋 ? 在語句中,使用兩個連字符“ ”開頭,則從此開始的整行或者行的一部分就成為了注釋,注釋在行的末尾結(jié)束。 This is a line will be ignored. SELECT employee_name, address 查詢所有姓錢的員工 FROM employee WHERE employee_name LIKE 39。錢 %39。 ? 注釋的部分不會被 SQL Server執(zhí)行。 語句塊和注釋 ( 2)多行注釋 ? 多行注釋方法是 SQL Server自帶特性,可以注釋大塊跨越多行的代碼,它必須用一對分隔符“ /* */”將余下的其他代碼分隔開。 /* This is a m. All these lines will be ignored. */ /* List all employees.*/ SELECT * FROM employee ? 注釋并沒有長度限制。 SQL Serv
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1