sql的缺點
存儲過程是一組予編譯的SQL語句
它的優點:1.允許模塊化程序設計,就是說只需要創建一次過程,以後在程序中就可以調用該過程任意次。
2.允許更快執行,如果某操作需要執行大量SQL語句或重復執行,存儲過程比SQL語句執行的要快。
3.減少網路流量,例如一個需要數百行的SQL代碼的操作有一條執行語句完成,不需要在網路中發送數百行代碼。
4.更好的安全機制,對於沒有許可權執行存儲過程的用戶,也可授權他們執行存儲過程。
『貳』 比較Access、Oracle、SQL server 三種資料庫的優缺點。
ACCESS是由微軟發布的關聯式資料庫管理系統。它結合了 Microsoft Jet Database Engine 和 圖形用戶界面兩項特點,是 Microsoft Office的成員之一。 優點:Access部署簡單方便就一個文件運用起來比較靈活主要是桌面資料庫系統,他也可以開發基於自己的桌面資料庫應用(UI),也可以作為前端開發工具與其它資料庫搭配開發應用程序(如SQL Server,DB2,Oracle等),熟練的軟體設計師和資料分析師利用它來開發應用軟體,而一些不熟練的程序員和非程序員的初級用戶則使用它來開發簡單的應用軟體。
缺點:數據儲存量小安全性不夠高,加了用戶級密碼容易破解。C/S結構下對伺服器要求很高,否則容易造成MDB損壞並發數255,但是對高強度操作適應性差,如果伺服器不夠好,網路不夠好,編程的方法不夠好,6-7個人同時訪問就能導致MDB損壞或者並死,不能將VBA代碼開發的軟體系統直接編譯成EXE可執行文件,不能脫離ACCESS或者ACCESS RUNTIME環境,該環境相對其他軟體體積較大(50M左右)。Microsoft Access資料庫有一定的極限,如果數據達到100M左右,很容易造成伺服器iis假死,或者消耗掉伺服器的內存導致伺服器崩潰。
SQL Server是一個關系資料庫管理系統。
優點:安全性高真正的客戶機/伺服器體系結構,圖形化用戶界面,使系統管理和資料庫管理更加直觀、簡單,豐富的編程介面工具為用戶進行程序設計提供了更大的選擇餘地。SQL Server與Windows NT完全集成,利用了NT的許多功能,如發送和接受消息,管理登錄安全性等。SQL Server也可以很好地與Microsoft BackOffice產品集成。具有很好的伸縮性,可跨越多種平台使用,對Web技術的支持,使用戶能夠很容易地將資料庫中的數據發布到Web頁面上。SQL Server還提供數據倉庫功能,這個功能只在Oracle和其他更昂貴的DBMS中才有。
缺點:因功能強大,所以操作數據比ACCESS較為復雜。
『叄』 sql語言 缺點
它的缺點就是功能太強大了,它的優點同時也是它的缺點!!
『肆』 Oracle資料庫和Sql server資料庫各有什麼優缺點
1.Oracle跨平台,SQL
Server只能運行在Windows上,而Windows能夠安裝的硬體是有限的,如Sun的Sparc伺服器不能安裝Windows,一些大型機、小型機也只能裝UNIX,在這些高端機器上就只能跑Oracle了,這註定了Oracle就是高端資料庫,而SQL
Server呢,中低端。
2.Oracle真正實現了行級鎖,SQL
Server也宣稱實現了行級鎖,但你實際去試,如果不加索引,其實是不行的。
3.Oracle因為有多版本數據的技術,讀寫操作不會相互等待,雖然SQL
Server
2005學習Oracle增加了snapshot機制,從而也引進了多版本數據(MySQL也有多版本數據機制,不能說一定是學習Oracle),但是實際效果感覺就是2個版本的數據,隔離級別為read
committed時候,讀寫不再相互等待,但是把隔離設置為Serializable還是會產生讀寫相互等待。
4.Oracle的事務日誌歸檔相當方便,而SQL
Server要用事務日誌備份來實現,而且還要配置自動作業,啟動agent服務。
5.Oracle的數據字典豐富,使得DBA容易判斷資料庫的各種情況,雖然SQL
Server
2005學習了Oracle的數據字典的特點,但從數量及方便程度上還是相差太多。個人感覺這是Oracle最人性化的地方。
6.Oracle的PL/SQL比SQL
Server的T-SQL功能強大很多。
7.Oracle的觸發器比SQL
Server的種類多幾種。
8.oracle的備份恢復原理相當簡單明了,備份就在操作系統上拷貝數據文件好了,恢復呢,再拷貝回來,數據是舊的,不怕,應用重做日誌好了。SQLServer呢,雖然原理在本質上還是這些,但操作起來麻煩多了,麻煩到讓你體會不到其本質。
9.Oracle資料庫啟動可以有多個階段,使得DBA可以在不同的情況下,通過啟動到特定的階段解決一些特殊問題,而SQLServer只要服務一啟動,所有資料庫就都打開了。
10.SQLServer給人的感覺是簡單易用,但是我要說,如果你繼續向前走,就會發現SQLServer的體系結構相當復雜(注意我這里是說的復雜),大體還是沿襲的Sybase的體系結構,這種復雜結構,估計很難有根本性的改變,而Oracle呢,時間越長你越會覺得其體系結構嚴謹,雖然開始會感覺很難。我的一個比喻,SQLServer是傻瓜相機(就是那些一兩千的小數碼),Oracle是單反相機(40D,5D,D300),如果你是入門者,那用傻瓜相機好了,在各種環境下拍攝,基本都過得去,用單反,光圈、快門都要自己設定,反倒不如傻瓜相機的效果,如果你是高手了,那傻瓜相機就很難得心應手了。
11.Oracle的書籍一般都比較深,隨便一說就是一大批,EpertOracle、PracticalOracle8i、Cost-basedOracle,SQLServer呢,恐怕只有那套InsideSQLServer了,雖然SQLServer的書籍數量比Oracle的多的多(特別是在國內),但多數都是stepbystep的入門書。
12.對比SQL*Plus與sqlcmd(或2000的osql,6.5的isql),sqlcmd的功能是太簡陋,差得太多了。
13.SQLServer的最大優點就是和Windows結合緊密,易用,但是要注意事情都是兩面的,這些優點可能導致其致命的缺點,例如易用,使得搞SQLServer的人可以不求甚解,有時候不求甚解是沒問題的,但是有時候不求甚解可能會造成災難,特別是對搞資料庫的人來說。不好意思,本來要說SQLServer的優點呢,最後也成了缺點了。
『伍』 使用帶參數的sql語句有什麼優點與缺點
優點:不用關心語句的單引號的問題了
,令外可以有效的防止SQL注入的非法入侵,這樣寫程序在編譯的時候就把那語句編譯了,不會與其它字元匹配了,這就是防止SQL注入的問題了,
唯一的缺點就是佔用系統資源的問題了,因為它是早被預編譯好的東西,所以系統在調用的時候是直接使用的,不需要再次進行對SQL語句進行編譯了,如果項目小的話,少量的這樣的代碼可以不用計較資源的問題了
『陸』 sql存儲過程的缺點
1.如果更改范圍大到需要對輸入存儲過程的參數進行更改,或者要更改由其返回的數據,則您仍需要更新程序集中的代碼以添加參數、更新 GetValue() 調用,等等,這時候估計比較繁瑣了。
2.可移植性差
由於存儲過程將應用程序綁定到 SQL Server,因此使用存儲過程封裝業務邏輯將限制應用程序的可移植性。如果應用程序的可移植性在您的環境中非常重要,則將業務邏輯封裝在不特定於 RDBMS 的中間層中可能是一個更佳的選擇。
『柒』 access與SQL資料庫的各的優缺點!
Access是一種桌面資料庫,只適合數據量少的應用,在處理少量數據和單機訪問的資料庫時是很好的,效率也很高。但是它的同時訪問客戶端不能多於4個。access資料庫有一定的極限,如果數據達到100M左右,很容易造成伺服器iis假死,或者消耗掉伺服器的內存導致伺服器崩潰。
SQL Server是基於伺服器端的中型的資料庫,可以適合大容量數據的應用,在功能上管理上也要比Access要強得多。在處理海量數據的效率,後台開發的靈活性,可擴展性等方面強大。因為現在資料庫都使用標準的SQL語言對資料庫進行管理,所以如果是標准SQL語言,兩者基本上都可以通用的。SQL Server還有更多的擴展,可以用存儲過程,資料庫大小無極限限制。
『捌』 視圖sql的優缺點
一,視圖著重於特定數據。
視圖可以讓用戶或者程序開發人員只看到他們所需要的數據,而不需要把表中的所有信息與欄位暴露出來,這樣增強了數據的安全性。
二,簡化數據的操作,易維護。
我們可以將經常用到的多表聯合查詢出來的數據,或特定的結果集定義為視圖,這樣就起到了模塊化數據的作用。我們在使用這些數據時直接查詢該視圖就可以,而不用到處寫長長的SQL語句,這樣也起到易維護的作用。
三,視圖可以限定查詢數據。
比如:對於不同的用戶,我們只提供部分數據給他。這樣,我們就可以在視圖中限定結果集,然後返回該視圖給他。這樣,無論用戶怎麼對視圖定義查詢條件,他也不能查詢出我們不想提供給他的數據。 雖然視圖可以給我們帶來種種便利,但不意味著我們就可以濫用它。因為視圖其實就是一段SQL語句,所以它的結果都是每次調用時動態生成的。如果不合理的定義視圖,必然帶來性能上的損耗。
下面是我們在創建視圖應該要注意的幾點:
一,操作視圖會比直接操作基礎表要慢,所以我們盡量避免在大型表上創建視圖。
二,盡量不要創建嵌套視圖,就是在視圖中使用視圖。 這樣在查詢時,會多次重復訪問基礎表,帶來性能損耗。
三,盡量在視圖只返回所需的信息,盡量不要在視圖使用不需要訪問的表。
四,在大型表或者復雜定義的視圖,可以使用存儲過程代替。
五,頻繁使用的視圖,可以使用索引視圖來代替。
『玖』 sql游標的優缺點為什麼用 什麼時候用
優點:
游標允許應用程序對查詢語句select
返回的行結果集中每一行進行相同或不同的操作,而不是一次對整個結果集進行同一種操作;它還提供對基於游標位置而對表中數據進行刪除或更新的能力
缺點:
處理大數據量時,效率低下,佔用內存大
一般來說,能使用其他方式處理數據時,最好不要使用游標,除非是當你使用while循環,子查詢,臨時表,表變數,自建函數或其他方式都無法處理某種操作的時候,再考慮使用游標