国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySQL與存儲過程的相關資料

2024-07-24 12:43:38
字體:
來源:轉載
供稿:網友
MySQL是“世界上最為流行的開放性數據庫”,至少對于MySQL Web站點會這樣。但無論MySQL如此流行,很多公司都對MySQL的使用抱有抵觸情緒。這種現象來自幾個原因,其中有些人錯誤地認為開放性源代碼只不過相當于小孩子的積木游戲,而另一些人認為任何免費的東西都不會是好東西。也許這些想法都是誤解,然而有一種抱怨卻是合理的,即與其它對應的產品不一樣,比如Oracle或者 DB2,MySQL不能夠支持存儲過程(stored procedures)。 

最新的MySQL 5.0能夠支持存儲過程。如果你對存儲過程還沒有熟悉,那么你可以認為它們只是存儲在數據庫服務器端的SQL命令和程序邏輯的集合。這些存儲過程可以被應用程序調用,使得不同技術水平的開發人員能夠建立自己的SQL。
優點 存儲過程能夠允許絕大部分的數據庫訪問邏輯與程序邏輯分離開來。使用存儲過程的其中一個間接的優點是,程序的代碼變得更加小巧和容易理解。存儲過程的另一優點是,SQL可以被預先編譯,由此提高了程序的速度。因為存儲過程包含程序邏輯,可以在數據庫服務器端更多地執行更多的處理。同樣,當執行一個n-tier程序時,存儲過程被用于將數據層與服務層分離開來。
安全性也是存儲過程的另一優點。當不能直接訪問表格時,程序可以將執行優先級別分配給存儲過程。不幸的是,在這時候,MySQL不支持“授予執行(GRANT EXECUTE)”。這就意味著除非程序具有訪問表格的權限,否則調用訪問相同表格的一個存儲過程也是不行的。使用這一特性有點像在做一個很有趣的賭博。
標準 與Oracle或者微軟的相關數據庫不一樣,MySQL和IBM的DB2能夠遵循存儲程序的SQL:2003語法。在理論上這意味著,如果數據庫結構相同,存儲程序可以在不同數據庫中使用。
可支持的SQL聲明 雖然MySQL不能支持存儲程序,但它卻可以完成很多任務,如表A所示。除此之外,MySQL的stored procedure documentation(存儲過程文檔)描述了可用于Oracle的PL/SQL和SQL Server的 T-SQL的很多兼容特性。我對存儲過程支持的印象是,它執行比較緩慢,目的是避免任何影響大型軟件開發工程的步驟。
表A

    聲明

    描述

    CREATE PROCEDURE

    建立一個存放在MySQL數據庫的表格的存儲過程。

    CREATE FUNCTION

    建立一個用戶自定義的函數,尤其是返回數據的存儲過程。

    ALTER PROCEDURE

    發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 莱西市| 临潭县| 桑植县| 东乌珠穆沁旗| 塘沽区| 成武县| 铁岭县| 买车| 邯郸市| 哈尔滨市| 望都县| 界首市| 虎林市| 佳木斯市| 南安市| 阳泉市| 海南省| 吉安县| 乌拉特后旗| 阿鲁科尔沁旗| 博野县| 漳州市| 柳江县| 华坪县| 黑龙江省| 桂阳县| 瓮安县| 二连浩特市| 鹤壁市| 万盛区| 尼木县| 达州市| 东乡族自治县| 永嘉县| 台安县| 瑞丽市| 五大连池市| 大同县| 林周县| 博客| 安吉县|