1. 程式人生 > >SQL Server、Access、Oracle資料庫之優缺點對比

SQL Server、Access、Oracle資料庫之優缺點對比

導讀:
1、SQL Server是一個關係資料庫管理系統。
2、ACCESS是由微軟釋出的關聯式資料庫管理系統。
3、Oracle是基於伺服器的大型資料庫。

1、SQL Server是一個關係資料庫管理系統。

        基於伺服器端的中型的資料庫,可以適合大容量資料的應用。在處理海量資料的效率,後臺開發的靈活性,可擴充套件性等方面強大,而且可以用儲存過程、函式等。

優點:安全性高真正的客戶機/伺服器體系結構,圖形化使用者介面,使系統管理和資料庫管理更加直觀、簡單,豐富的程式設計介面工具為使用者進行程式設計提供了更大的選擇餘

地。SQL Server與Windows NT完全整合,利用了NT的許多功能,如傳送和接受訊息,管理登入安全性等。SQL Server也可以很好地與Microsoft BackOffice產品整合。

具有很好的伸縮性,可跨越多種平臺使用,對Web技術的支援,使使用者能夠很容易地將資料庫中的資料釋出到Web頁面上。SQL Server還提供資料倉庫功能,

這個功能只在Oracle和其他更昂貴的DBMS中才有。

缺點:因功能強大,所以操作資料比ACCESS較為複雜。

2、ACCESS是由微軟釋出的關聯式資料庫管理系統。

    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假死,或者消耗掉伺服器的記憶體導致伺服器崩潰。

3、Oracle是基於伺服器的大型資料庫,主要應用於銀行、證券類業務等。

優點:

(1)、ORACLE7.X以來引入了共享SQL和多線索伺服器體系結構。這減少了ORACLE的資源佔用,並增強了ORACLE的能力,使之在低檔軟硬體平臺上用較少的資源就可以

支援更多的使用者,而在高檔平臺上可以支援成百上千個使用者。 

(2)、提供了基於角色(ROLE)分工的安全保密管理。在資料庫管理功能、完整性檢查、安全性、一致性方面都有良好的表現。

(3)、支援大量多媒體資料,如二進位制圖形、聲音、動畫以及多維資料結構等。

(4)、提供了與第三代高階語言的介面軟體PRO*系列,能在C,C++等主語言中嵌入SQL語句及過程化(PL/SQL)語句,對資料庫中的資料進行操縱。

加上它有許多優秀的前臺開發工具如POWER BUILD、SQL*FORMS、VISIA BASIC 等,可以快速開發生成基於客戶端PC 平臺的應用程式,並具有良好的移植性。

(5)、提供了新的分散式資料庫能力。可通過網路較方便地讀寫遠端資料庫裡的資料,並有對稱複製的技術。

(6)、與sql相比,oracle資料庫的優點:

a.Oracle的穩定性要比Sql server好。

b.Oracle在導資料工具sqlload.exe功能比Sqlserver的Bcp功能強大,Oracle可以按照條件把文字檔案資料匯入。

c.Oracle的安全機制比Sql server好。

d.Sql server的易用性和友好性方面要比Oracle好。

e.在處理大資料方面Oracle會更穩定一些。

f.Sql Server在資料匯出方面功能更強一些。

g.處理速度方面比Oracle快一些,和兩者的協議有關。

缺點:

管理維護麻煩一些;

資料庫崩潰後回覆很麻煩,因為他把很多東西放在記憶體裡;

資料庫連線要慢些,最好用連線池;

大物件不好用,vchar2欄位太短,不夠用

管理員的工作煩,且經驗非常重要;

對硬體的要求很高。

相關推薦

SQL ServerAccessOracle資料庫優缺點對比

導讀: 1、SQL Server是一個關係資料庫管理系統。 2、ACCESS是由微軟釋出的關聯式資料庫管理系統。 3、Oracle是基於伺服器的大型資料庫。 1、SQL Server是一個關係資料庫管理系統。         基於伺服器端的中型的資料庫,可以適合大容量資料的

李洪根 SQL SERVERACCESSEXCEL的資料轉換

熟悉SQL SERVER 2000的資料庫管理員都知道,其DTS可以進行資料的匯入匯出,其實,我們也可以使用Transact-SQL語句進行匯入匯出操作。在Transact-SQL語句中,我們主要使用OpenDataSource函式、OPENROWSET 函式,關於函式的詳細

隨機讀取N條記錄(MySQLSQL ServerAccessOraclepostgreSQL)

利用一條SQL語句從資料庫Table表中隨機獲取N條記錄,各資料庫的SQL語句略有不同,如下: 1、MySql Select * From TABLE Order By Rand() Limit N 以上程式碼效率不高,自己對1000條資料表隨機取10條的測試結果為耗時0

Vertica的這些事—— SQL ServerOracleMySQL和Vertica資料庫常用函式對比

SQL Server、Oracle、MySQL和Vertica資料庫常用函式對比 Vertica資料庫是HP公司新收購的用於BI方面的資料庫。 絕對值 S:select abs(-1) value O:select abs(-1) value f

SQL Server 登入名伺服器角色使用者名稱和資料庫角色 --- 解釋

一、基本解釋 登入名:登入伺服器的使用者賬號;   伺服器角色:登入名對該伺服器具有的許可權,角色分多種的,一個角色可以有多個登入名,如作業系統的系統使用者可以有多個。   SQL伺服器角色  sysadmin     &nb

SQL Server 2008匯入匯出資料庫

SQL Server 2008資料庫的匯入、匯出和Mysql的匯出還有一定的區別,剛開始的時候完全摸不到方向,利用Microsoft SQL Server Management Studio進行匯入、匯出操作。 1.匯出 預設為flase 改為true

oracle資料庫統計分析(方差標準差協方差)

SELECT deptno, ename, --st_name || ' ' || last_name employee_name, hiredate, sal, STDDEV (sal) OVER (PARTIT

SQL Server基礎(七) VS2015 連線資料庫——基礎入門篇:主要分為配置並載入App.config檔案建立資料工廠物件建立連線物件建立命令物件建立讀取器物件幾個步驟。

一、簡介          1、關於學習C#如何連線資料庫或斷開連線資料(斷開連線資料庫往後我將討論),我是按照這本書一點一點學習的。        現在,終於用到了資料庫,於是,學習如何去連線資

sql server 2005 使用者組或角色在當前資料庫中已存在的解決辦法

在SQL SERVER 中附加一個其他伺服器上遷移過來讓資料庫後,建立登入名與資料庫使用者對映時出現如標題錯誤。 解決方法如下: sp_change_users_login 'update_one', 'wzjr', 'wzjr' sp_change_users_logi

SQL Server-語句類別數據庫範式系統數據庫組成

標識 相互 什麽是 basic 使用 既然 img 不同 讀數 前言 終於等到這一天,我要開始重新系統學習數據庫了,關於數據庫這塊,不出意外的話,每天會定時更新一篇且內容不會包含太多,簡短的內容,深入的理解,Always to review the b

SQL SERVER--- 排序規則數據類型

除了 沒有 部分 money database 參數 chinese collate 內部 一、排序規則 有時候我們向數據庫插入文本時,會出現亂碼“?”,這時有可能是我們創建數據庫沒有設置好排序規則 以 Chinese_PRC_CI_AS 為例 前半部分Chinese_

SQL Server WITH ROLLUPWITH CUBEGROUPING語句的應用

toolbar then span 分組 table bsp group 生成 spa CUBE:CUBE 生成的結果集顯示了所選列中值的所有組合的聚合。 ROLLUP:ROLLUP 生成的結果集顯示了所選列中值的某一層次結構的聚合。 GROUPING:當行由 CUBE 或

SQL SERVER 新增表新增字段修改字段 判斷表是否存在

相關信息 not null record begin hist char use size content // 新增之前判斷表是否存在 IF NOT EXISTS (SELECT NAME FROM SYSOBJECTS WHERE ID = OBJECT_ID(‘t

SQL Server觸發器建立刪除修改檢視

教程貼士:本教程為大家介紹SQL Server觸發器建立、刪除、修改、檢視方法。     一:觸發器是一種特殊的儲存過程,它不能被顯式地呼叫,而是在往表中插入記錄﹑更新記錄或者刪除記錄時被自動地啟用。所以觸發器可以用來實現對錶實施複雜的完整性約束。   二:SQL Server

【優化SQL Server迴圈更新插入耗時長的問題】

一: 工作當中遇到更新較多資料時,使用迴圈(while,或遊標)進行增刪改時,特別費時  WHILE @i <= @rowsBEGIN   SELECT @appNo = AppNumber, @roleid = RoleId, @statusi= Status, @empId = Empl

Sql Server 觸發器UpdateInsertDelete

什麼是觸發器 在SQL Server裡面也就是對某一個表的一定的操作,觸發某種條件,從而執行的一段程式。觸發器是一個特殊的儲存過程。 常見的觸發器一共有三種 Insert, Update,Delete

SQL Server中 sysobjectssysolumnssystypes

最近在寫工作室的開發框架,其中需要讀取資料庫資訊用來自動生成增刪改查程式碼,經過查閱資料發現sysobjects、sysolumns、systypes可以滿足要求。 1、sysobjects       系統物件表。 儲存當前資料庫的物件,如約束、預設值、日誌、規則、

Oracle 資料庫最:你見過最高的 SQL Version 是多少?

Oracle資料庫中執行的SQL,很多時候會因為種種原因產生多個不同的執行版本,一個遊標的版本過多很容易引起資料庫的效能問題,甚至故障。 有時候一個SQL的版本數量可能多達數萬個,以下是我之前在”雲和恩墨大講堂”分享過的一個案例。這個報告中的 SQL,最高達到了26萬個 SQL 版本。算是我見過的“

SQL Server匯入mdfldf檔案

一、方法一 “新建查詢” 輸入 EXEC sp_attach_db @dbname = 'TESTlibrary',    //自定義的資料庫名稱 @filename1 = 'C:\db_library_Data.MDF',     //

Oracle資料庫使用sqlplus執行sql指令碼亂碼解決辦法

說明:本來想使用Navicat來以utf-8的格式匯入sql指令碼,但Navicat有一記憶體塊不允許訪問,導致執行指令碼失敗,找了半天沒找到解決辦法.但發現sqlplus可以執行成功,問題就是中文亂碼. 後來發現,sqlplus裡儲存的sql指令碼的格式都是ANSI的格式