标签: SQL Server

  • 《SQL案例解析:以SQL Server與Oracle為例》分享電子書

    SQL案例解析:以SQL Server與Oracle為例

    DJAA17.jpg

    本書介紹

    SQL案例解析:以SQL Server與Oracle為例: 本書藉由大量經過驗證且可行的範例,讓AP/DBA 以最短的時間熟悉SQL 語言的各種運用與注意事項,以彌補理論與實際應用的落差。所以,每個AP/DBA 都應該有一本,當作案頭書隨時翻閱,並參考作者多年來的經驗談,幫助你順利地解決目前所遇到的SQL 難題。

    作者匯集其多年的資料庫開發經驗,同時探討SQL語法於Oracle及SQL Server兩種企業資料庫系統的應用,書中並涵括許多具商業價值的案例,特別適合已具有Oracle或SQL Server經驗的資料庫開發者、DBA、軟體架構師與資料庫應用維護人員閱讀,藉由本書鍛鍊解決問題之思維及能力。

    本書內容

    以比對式寫法,整理出Oracle及SQL Server常用函數的差異。
    將原本以應用程式或內儲程式開發的需求,嘗試直接以一組SQL指令完成,除了提供另一種思維及解決模式之外,更能有效提升資料庫的執行效率。
    探討常見的日期區間報表實作,以日報、月報、週報、小時區間報表、科學園區的四二輪工時報表,以及完整日期報表等實例。
    詳述如何連結異質資料來源,以及利用SQL指令達成迴圈指令、亂數功能、篩選等。
    本書所探討的概念也適用於MySQL、DB2、Teradata等各類型資料庫。

    本書目錄

    第01章│資料庫的使用
    第02章│SELECT 敘述句
    第03章│基本SQL用法
    第04章│資料異動處理
    第05章│資料型態
    第06章│字串函數的使用
    第07章│日期函數的使用
    第08章│數值函數的使用
    第09章│進階SQL用法
    第10章│日期區間報表
    第11章│預儲程式
    第12章│異質資料來源
    第13章│特殊應用

    電子書下載: 《SQL案例解析:以SQL Server與Oracle為例》

    此電子書由網友上傳分享,僅限於個人學習試用,下載24小時自行刪除,請購買正版書籍!

  • 調查:Oracle 11g版本選用情況仍不樂觀

    在本年度數據庫技術應用技術問卷調查中,我們持續對Oracle數據庫用戶的版本情況做了調查,以便更好地分析Oracle數據庫用戶版本保有及升級更新狀況。

              如何我們回顧06年的數據,進而再對比上面08年和07年的調查數據,可以發現,在06到07年裡,Oracle數據庫的市場使用進一步增加,在2006年的受訪用戶中,有15 %沒有使用Oracle數據庫,2007年這一數字降低到11%。

            分析2008年的調查數據,只有4.7%的客戶升級到了Oracle 11g版本,而在2007年,這些“敢於吃螃蟹”的人僅僅有0.2%。考慮到11g版本的推出時間和推廣力度,2008年的Oracle 11g版本佔有量比例的確不算高。

            記者就此採訪ITPUB社區的一位數據庫專家,他認為:“08年升級到11g用戶應該主要是8i,9i產品的用戶,他們已經有升級計劃,趕上最新的版本11g推出,所以就直接跳過了10g數據庫,直接到11g上去了;這一比例中,應該不會有或者說很少有10g的用戶轉化過來的。”

           筆者註意到,甲骨文對Oracle 11g的推廣也開始採用新的思路和方法,在2008年到2009年,Oracle在大力推廣數據庫選件(database options),這些多樣化的功能特性,是針對不同用戶對數據庫的特殊需求所提供的,大部分都集成在高版本的數據庫產品中。這種推廣和銷售模式,有將產品和功能分拆開來賣的意味。

       再來看Oracle 10g的情況。 Oracle 10g的佔有量已經高達44.2%,相比2007年增長了近5個百分點,已經成為最主要的使用數據庫版本。 2007年,在數據庫版本上,Oracle 10g獲得了市場和用戶的廣泛認同,使用的比例占到39.8%,而2006年的數字僅為27.9%,有幾乎12個百分點的比較大的增長;在2007年,Oracle 10g的用戶使用也首次超過了Oracle 9i,在2006年使用Oracle 9i的用戶比例高達47%,這個數字在2007年下降了9個百分點。這一變化可能受到Oracle 9i的退出計劃影響,但是毋庸置疑的是,Oracle 10g已經得到了大規模普及和採用。

            在2008年的調查結果中,另外一個比較有趣是數據是“沒有使用Oracle數據庫”的用戶比例,2008年沒有使用Oracle數據庫的用戶達到13.6%,而在07年這一比例只有11%;無獨有偶,本次調查涉及SQL Server,DB2,Oracle數據庫的這一數據時,未使用的比例都略有上升。 Itpub社區的一位數據庫分析師認為,這是開源數據庫使用量增長的結果,導致商業數據庫用戶都在不同程度的流失,特別是在當前經濟形式日趨嚴峻的形勢下,開源數據庫的吸引力會進一步加強。

    看來,商業數據庫廠商需要推出更加靈活的授權許可和服務模式,進一步降低企業的IT投資成本,才能保住用戶,以免流失。

  • Microsoft SQL Server 2005基礎教程

    Microsoft SQL Server 2005基礎教程教學內容:

    點擊下載:  SQL Server 2005基礎教程

    第一章:

    1.理解使用數據庫的原因
    2.掌握數據庫的基本概念和特點
    3.理解Microsoft SQL Server簡史
    4.理解Microsoft SQL Server系統的體系結構
    5.理解數據庫和數據庫對象的特點
    6.理解管理工具的特點
    7.理解數據庫管理員的任務

    1.1 為什麼使用數據庫?
    1.2 什麼是數據庫?
    1.3 Microsoft SQL Server簡史
    1.4 Microsoft SQL Server系統的體系結構
    1.5 數據庫和數據庫對象的特點
    1.6 管理工具
    1.7 數據庫管理員

    第二章:

    2.1 安裝規劃
    2.2 安裝過程
    2.3 驗證安裝結果
    2.4 升級規劃
    2.5 註冊服務器
    2.6 配置服務器選項

    第三章:

    3.1 概述
    3.2 管理登錄名
    3.3 固定服務器角色
    3.4 管理數據庫用戶
    3.5 管理架構
    3.6 數據庫角色
    3.7 管理應用程序角色
    3.8 管理權限
    3.9 SQL Server 2005內置的加密機制
    3.10 使用SQL Server Management Studio工具

    全部二十一章,請下載後查看全部內容…..

  • SQL Server 2005 檢視表的不思議現象

     春天到了~俗話說「春天後母臉 — 說變就變」,那系統可以說是女人心 — 永遠都有可愛又難以捉模的時刻~ 咳咳咳…扯遠了…回到正題 ^^”。由於最近公司的 DB Server 進行升級,系統也將原本的 SQL 2000 升級至 2005,步驟在一般不過了:
    安裝 => 設定 => 升級 SP2 => 完成把原本的 MDF 掛載上去後,修改連線密碼,一切正常!!上線~隔天不思議的情形就發生了…網頁上顯示的資料居然都是最舊的!! What’s up !?!?

    將頁面上使用的 view 表以 SSMS 開啟,發現排序的指令沒有生效
    程式內使用的 SQL String 為 “Select * from vwTest”
    而 vwTest 內則有下 order by [dtDate] 的語法,恩恩~怎麼看都沒錯啊~
    切到檢視表設計下看…排序以及資料都是正常的!!好…看來是檢視表內的 order 語法無法在讀取檢視表 vwTest 的第一時間生效了…馬上進行 Troble Shooting!!

    在 Google 了一下之後,首先看到了微軟的 KB,裡面說到其症頭為 —

    The SELECT statement uses the TOP (100) PERCENT expression.
    ==> vwTest裡面的確有用到 TOP (100) PERCENT 的選取方式


    The SELECT statement uses the ORDER BY clause.
    ==> 也有使用 order 排序

    解決方式 —
    936305 Cumulative update package 2 for SQL Server 2005 Service Pack 2 is available

    安裝時明明有升級到 SQL 2005 SP2 … 現象卻依然持續的發生,只好繼續找了 T_T
    最後在國外的 SQL SERVER 為主題的 BLOG 中找到了一篇文章說明了因應的對策

    • 在Select語法的部分,將原本的 Select TOP (100) PERCENT 改為 Select TOP 2147483647
    • 有找到另外一種解法,將 Select 語法改為 Select TOP (99.999999999999)也是可行的,注意~小數點後面是 12 個 9 唷!

    我採用的方法是 12 個 9 的方法,將 vwTest 的語法修改之後並儲存,在開啟的同時…一切又回到美好的正常狀態了!這裡也有一個看起來頗奇怪的地方呢,不知道各位有沒有注意到,既然都選取 TOP 100 PERCENT 了,不就是選取全部了嗎?為什麼還要特別加上以百分比選取的語法呢?後來跟程式設計師討論了一下,可能是早期的程式產生器所產生的 VIEW 特有的現象,由於程式已經是 N 年前寫的,現在已經不可考了。但為了安全…輕易的把 TOP 100 PERCENT 拿掉又怕會有更不可思議的意外,因此暫且先用 14個 9 的選取方式代替。

    小插曲 — 針對 SQL 2005 SP2 的重大更新
    這一個更新是在找資料中看到的,標題很有趣的寫著 “A Service Pack for a Service Pack
    這個 hotfix 修正的可是一個大問題呢…”清除工作未在排定的時間間隔執行
    什麼 O_o…排定的工作不會執行,這可是大事,當然馬上把它下載到 SERVER 進行安裝
    有先發現總比到後面問題發生在處理好多了,這雖然是一個小插曲,卻是一個很大的意外收穫呢 ^^b

    參考資料:
    http://support.microsoft.com/kb/926292/en-us
    http://support.microsoft.com/kb/933508
    http://support.microsoft.com/kb/933508
    http://www.themssforum.com/SQLServer/Order-views/
    http://sqlblog.com/blogs/tibor_karaszi/archive/2007/11/28/sorted-views.aspx
    http://www.sqlmag.com/Article/ArticleID/95449/sql_server_95449.html

     

    來源:www.51-pass.com