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

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

MS SQL Server存儲過程參數的隱式類型轉換

瀏覽:121日期:2023-11-03 10:24:13

Microsoft SQL Server 2000數據表的列和存儲過程的參數都是有類型的,但我發現在寫存儲過程時很多參數類型是可以“混用”的,比如,下面的存儲過程:

/**//* Name :;Stp_TestDifferentParaType_INT Function :測試不同參數類型對存儲過程的影響 Author :Waxdoll Cheung Date :;2005-04-07 */ CREATE PROCEDURE dbo.Stp_TestDifferentParaType_INT -- 統計年月 @TongJiNianYue INT AS SELECT [FM_產品登記].* FROM [FM_產品登記] WHERE (所屬年份 = @TongJiNianYue); RETURN GO

和下面的存儲過程:

/**//* Name :;Stp_TestDifferentParaType_CHAR Function :測試不同參數類型對存儲過程的影響 Author :Waxdoll Cheung Date :;2005-04-07 */ CREATE PROCEDURE dbo.Stp_TestDifferentParaType_CHAR -- 統計年月 @TongJiNianYue CHAR(4) AS SELECT [FM_產品登記].* FROM [FM_產品登記] WHERE (所屬年份 = @TongJiNianYue); RETURN GO

在測試存儲過程時輸出的結果是一樣的,而數據列是有類型的——CHAR(4), 為什么呢?應該是存儲過程在執行時對參數進行了隱式類型轉換。

但寫存儲過程時確定參數的類型時應該注意: 1、應該盡量使用和數據列類型相同的數據類型,減少運行是的隱式類型轉換; 2、不是所有類型都可以進行隱式類型轉換的,如果使用不同的數據類型,很可能會發生錯誤:; 圖:Microsoft SQL Server數據類型轉換圖

另外,SQL Server自定義函數的參數也有類似情況。

標簽: Sql Server 數據庫
主站蜘蛛池模板: 克东县| 抚远县| 山丹县| 中西区| 东方市| 桃园市| 连州市| 临江市| 罗城| 沐川县| 梁山县| 敦化市| 革吉县| 上蔡县| 哈巴河县| 华坪县| 阿鲁科尔沁旗| 含山县| 洱源县| 霍林郭勒市| 西藏| 新竹市| 宁安市| 湛江市| 子长县| 垫江县| 宁南县| 新营市| 门头沟区| 鄂托克前旗| 西乌珠穆沁旗| 绥化市| 澄江县| 赫章县| 乐陵市| 农安县| 怀柔区| 五指山市| 鹤岗市| 玉林市| 乐清市|