當前位置:首頁 » 編程語言 » sqlserver應用與開發範例寶典
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sqlserver應用與開發範例寶典

發布時間: 2023-08-31 20:40:31

sqlServer怎麼定時跑一段SQL語句

1、首先打開SqlServer應用程序,點擊打開左側工具欄中的「作業」選項。

Ⅱ 請推薦一本學習SQL Server資料庫的書籍.

深入淺出--SQL Server 2005開發、管理與應用實例
【內容簡介】
本書全面系統地介紹了SQL Server 2005應用、開發和管理方面的技術,涉及安裝和升級SQL Server、T-SQL增強、T-SQL應用、XML數據處理、CLR集成、開發SQL Server應用程序、端點、Service Broker、SQL Server Integration Services、SQL Server配置、SQL Server安全管理、數據的加密與解密、數據備份與還原、資料庫的高可用性技術、查詢SQL Server對象信息、伺服器性能監視等內容。
本書不但融合了作者在使用SQL Server 2005過程中遇到的各種常見問題和應用案例,還總結了作者幾年來在CSDN 社區SQL Server版所解決的大量問題,面向實際項目需求,涉及不同類型的應用,能夠多角度地引導讀者學習相關知識。而且針對各類問題,提供了詳細的操作步驟和解決思路,具有很強的實用性和可操作性,因此不僅適用於初學者,也適用於進階者。
【編輯推薦】
繼《中文版SQL Server 2000開發與管理應用實例》後的又一力作,從應用、開發和管理3個角度逐步深入,全面介紹SQL Server 2005資料庫技術,不但融合了資深專家數年工作實踐和寶貴經驗,還根據DBA所需具備的從業素質對內容進行了布局。
精彩內容:安裝和升級SQL Server,T-SQL增強,T-SQL應用,XML數據處理,CLR集成,開發SQL Server應用程序,端點,Service JBroker,SQL Server Integration Services,SQL Server配置,SQL Server安全管理,數據的加密與解密,數據備份與還原,資料庫的高可用性技術,查詢SQL Server對象信息,伺服器性能監視。

【目錄信息】

第1章 了解SQL Server 2005
1.1 SQL Server的發展
1.2 SQL Server 2005的產品組件與版本
1.2.1 SQL Server 2005的產品組件
1.2.2 SQL Server 2005的各種版本
1.3 SQL Server 2005增強
1.3.1 管理方面的增強
1.3.2 大幅提升編程的能力
1.3.3 完備的分析平台
1.4 安裝SQL Server 2005
1.4.1 通過向導安裝SQL Server 2005
1.4.2 自動安裝SQL Server 2005
1.5 連接到SQL Server
1.6 升級到SQL Server 2005
1.6.1 為什麼升級
1.6.2 SQL Server 2005的向後兼容性
1.6.3 SQL Server 2005升級顧問
1.6.4 升級到SQL Server 2005
1.7 SQL Server 2005管理及開發工具
1.7.1 SQL Server Management Studio
1.7.2 SQL Server Business Intelligence Development Studio
1.7.3 管理工具
第2章 T-SQL增強
2.1 DML增強功能
2.1.1 公用表表達式
2.1.2 排名函數
2.1.3 APPLY操作符
2.1.4 PIVOT和UNPIVOT運算符
2.1.5 OUTPUT子句
2.1.6 結構化錯誤處理
2.1.7 TOP增強
2.2 DDL增強功能
2.2.1 新的數據類型
2.2.2 行溢出
2.2.3 同義詞
2.2.4 分區表
2.2.5 DDL觸發器
2.2.6 定義參照完整性功能的增強
2.2.7 索引功能增強
第3章 T-SQL應用
3.1 聯接
3.1.1 條件聯接
3.1.2 聯接操作
3.2 數據檢索中的典型應用及常見問題釋疑
3.2.1 集合運算
3.2.2 動態T-SQL處理
3.2.3 數據匯總
3.2.4 SELECT應用
3.3 其他典型應用及常見問題釋疑
3.3.1 索引
3.3.2 隨機數
3.3.3 char與varchar的選擇
3.3.4 NULL與零長度、字元串尾隨空格
3.3.5 字元編碼與排序規則
3.3.6 日期處理中的常見問題與處理建議
3.3.7 游標處理
3.3.8 臨時表
3.3.9 標識值
3.3.10 事務與阻塞及死鎖
3.4 T-SQL編寫規范及建議
3.4.1 代碼編寫規范和建議
3.4.2 T-SQL中易犯的錯誤
第4章 XML數據處理
4.1 xml數據類型概述
4.2 類型化與非類型化XML實例
4.3 XQuery
4.3.1 XQuery概述
4.3.2 xml數據類型方法
4.3.3 XQuery運算符
4.3.4 XQuery條件表達式
4.3.5 XQuery函數
4.3.6 FLWOR
4.3.7 命名空間
4.4 構建xml數據
4.4.1 使用大容量載入
4.4.2 使用FOR XML子句
4.5 XML索引
4.5.1 XML索引概述
4.5.2 創建和管理XML索引
4.6 XML應用示例
4.6.1 合並行
4.6.2 分解字元串
4.6.3 生成Excel支持的XML表格數據
第5章 CLR集成
5.1 CLR集成概述
5.2 編寫和管理CLR對象
5.2.1 啟用CLR集成
5.2.2 編寫CLR程序集
5.2.3 發布和部署CLR程序集
5.2.4 SQL Server進程中專用的ADO.NET擴展
5.2.5 CLR集成安全性
5.3 CLR編寫示例
5.3.1 CLR用戶自定義函數
5.3.2 CLR用戶自定義聚合函數
5.3.3 CLR觸發器
5.3.4 CLR存儲過程
5.3.5 CLR用戶自定義數據類型
第6章 開發SQL Server應用程序
6.1 ADO.NET 2.0中的SQL Server .NET Framework數據提供程序的新增功能
6.1.1 分布式事務
6.1.2 批量復制
6.1.3 查詢通知
6.1.4 非同步執行
6.1.5 Provider的統計信息
6.1.6 其他
6.2 SQL Management Object(SMO)
6.2.1 SMO概述
6.2.2 SMO應用程序示例
6.3 SQL Server Express
6.3.1 支持的功能
6.3.2 升級MSDE 2000
6.3.3 用戶實例
第7章 端點
7.1 端點概述
7.1.1 創建和修改端點
7.1.2 端點許可權和身份驗證類型
7.2 本機XML Web服務
7.2.1 本機XML Web服務概述
7.2.2 本機XML Web服務應用示例
第8章 Service Broker
8.1 Service Broker概述
8.2 Service Broker架構與組成組件
8.2.1 體系結構
8.2.2 簡單的SQL Server聊天程序示例
8.2.3 Service Broker網路與路由
8.2.4 跨實例的SQL Server聊天程序示例
8.3 管理與監控Service Broker
8.4 事件通知
8.4.1 了解事件通知
8.4.2 實現事件通知
8.4.3 使用事件通知實現BLOCK信息收集的示例
第9章 SQL Server Integration Services
9.1 認識SSIS
9.1.1 SSIS的典型用途
9.1.2 SSIS體系結構
9.1.3 SSIS工具
9.1.4 SSIS包概述
9.2 創建、設計、發布和管理SSIS包
9.2.1 創建和設計包
9.2.2 事件處理
9.2.3 查看包對象
9.2.4 調試、發布與部署包
9.2.5 管理和監視已經發布的包
9.2.6 使用SQL Server代理作業執行包
9.3 在包中添加高級功能
9.3.1 使用日誌記錄
9.3.2 使用事務
9.3.3 使用變數及表達式
9.3.4 優先約束
9.3.5 使用檢查點
9.4 包保護級別
9.5 SSIS包示例
9.5.1 數據同步示例
9.5.2 數據收集示例
9.5.3 通用數據導入示例
第10章 SQL Server配置
10.1 服務配置
10.1.1 公用配置
10.1.2 專用配置
10.2 SQL Server配置
10.2.1 伺服器配置選項
10.2.2 資料庫配置選項
第11章 SQL Server安全管理
11.1 安全概述
11.2 連接安全
11.2.1 連接到SQL Server實例
11.2.2 網路協議與TDS端點
11.2.3 加密連接
11.3 登錄驗證
11.3.1 登錄身份
11.3.2 身份驗證和身份驗證模式
11.4 許可權控制
11.4.1 許可權控制體系概述
11.4.2 控制許可權
11.4.3 角色
11.5 與安全相關的事項
11.5.1 密碼策略
11.5.2 上下文切換
11.5.3 所有權鏈接
11.5.4 SQL注入
11.6 安全配置建議
11.6.1 操作系統級安全配置建議
11.6.2 連接SQL Server方面的安全配置建議
11.6.3 SQL Server上的安全配置建議與配置工具
第12章 數據的加密與解密
12.1 概述
12.1.1 加密層次結構
12.1.2 服務主密鑰
12.1.3 資料庫主密鑰
12.2 加密機制
12.2.1 證書
12.2.2 非對稱加密
12.2.3 對稱加密
12.2.4 通行短語加密
第13章 數據備份與還原
13.1 概述
13.1.1 數據與日誌
13.1.2 資料庫恢復模式
13.1.3 備份設備
13.1.4 備份媒體集、媒體簇和備份集
13.2 資料庫備份
13.2.1 完全備份
13.2.2 差異備份
13.2.3 部分備份
13.2.4 文件和文件組備份
13.2.5 日誌備份
13.2.6 資料庫維護計劃
13.3 備份媒體的可靠性
13.3.1 鏡像備份媒體集
13.3.2 驗證備份集
13.4 資料庫還原
13.4.1 資料庫還原過程與還原選項
13.4.2 還原備份
13.4.3 將資料庫還原到特定的恢復點
13.4.4 段落還原
13.4.5 頁面還原
13.4.6 資料庫快照及從快照中還原
13.5 資料庫備份與還原的實踐應用
13.5.1 系統資料庫的備份與還原
13.5.2 搶救損壞資料庫中的數據
13.5.3 使用備份與還原實現雙機熱備份
13.6 制訂資料庫備份方案
13.6.1 備份方法比較
13.6.2 備份方案制訂原則
13.7 數據備份與還原疑難解答
13.7.1 數據備份與還原中的常見問題
13.7.2 資料庫所有者與孤立用戶
13.7.3 備份中的COPY_ONLY選項
第14章 資料庫的高可用性技術
14.1 資料庫鏡像
14.1.1 概述
14.1.2 配置資料庫鏡像
14.1.3 資料庫鏡像配置示例
14.1.4 故障轉移
……

查看詳細介紹或書評:
http://www.china-pub.com/38462

更多sqlserver類書籍,請訪問
http://www.china-pub.com/search/power_search/power_search.aspx?key1=sql+server

買書前先查看書評及用戶反饋,查看圖書簡介及目錄,作者,及其它東東,:)

Ⅲ 貫通SQLServer2008資料庫系統開發的目 錄

第 1 篇 基礎知識篇
第1章SQL Server 2008概述、安裝和配置 2
1.1 SQL Server 2008概述 2
1.1.1 資料庫引擎 3
1.1.2 分析服務 3
1.1.3 集成服務 3
1.1.4 復制 4
1.1.5 報表服務 4
1.1.6 通知服務 4
1.1.7 全文搜索 5
1.1.8 Service Broker 5
1.2 選擇SQL Server 2008的優勢 5
1.3 安裝SQL Server 2008軟、硬體要求 6
1.4 安裝示例 7
1.5 伺服器網路配置 13
1.5.1 SQL Server配置管理器 13
1.5.2 配置伺服器網路協議和網路庫 14
1.5.3 加密與SQL Server的連接 14
1.6 客戶端網路配置 16
1.6.1 本地客戶端配置 17
1.6.2 使用防火牆系統 20
1.7 小結 23
第2章SQL Server 2008新增及加強功能介紹 24
2.1 新增及加強功能簡介 24
2.2 安全方面 25
2.2.1 加密 25
2.2.2 審計 26
2.3 管理方面 26
2.3.1 數據壓縮 26
2.3.2 資源管理器 26
2.3.3 管理非結構化數據 27
2.4 開發方面 27
2.4.1 一次性插入多行數據 27
2.4.2 FORCESEEK提示 27
2.4.3 GROUPING SETS 28
2.4.4 兼容性級別 28
2.4.5 用戶自定義表數據類型 29
2.4.6 表值參數 29
2.4.7 MERGE語句 30
2.5 新的數據類型 31
2.6 安裝 34
2.7 系統效能方面 34
2.8 其他增強 34
2.8.1 報表服務的新功能 34
2.8.2 伺服器合並解決方案 35
2.8.3 與Microsoft Office 2007結合 36
2.8.4 SQL Server集成服務 36
2.8.5 SQL Server分析服務 36
2.9 小結 36
第3章SQL Server管理工具集 37
3.1 SQL Server管理工具集簡介 37
3.2 功能組件和工具窗口介紹 39
3.3 使用SQL Server管理工具集管理伺服器 44
3.4 使用SQL Server管理工具集編寫、分析和編輯腳本 45
3.5 使用SQL Server管理工具集模板 52
3.6 在SQL Server管理工具集中開發解決方案和項目 55
3.7 SQL Server管理工具集與其他組件協同工作 61
3.8 小結 61
第4章資料庫和規範式 62
4.1 概述 62
4.2 資料庫的物理存儲結構設計和邏輯結構設計 64
4.2.1 資料庫物理存儲結構設計 64
4.2.2 資料庫邏輯結構設計 69
4.3 創建資料庫 73
4.4 刪除資料庫 76
4.5 修改資料庫 78
4.5.1 修改資料庫的名稱 78
4.5.2 更改資料庫所有者 78
4.6 資料庫設計規範式 79
4.7 系統資料庫 82
4.8 小結 85
第5章表 86
5.1 概述 86
5.2 表的結構 86
5.3 創建表 87
5.3.1 欄位 89
5.3.2 數據類型 89
5.3.3 表設計 93
5.3.4 全局唯一標識符與自動編號欄位 93
5.3.5 用戶定義數據類型 95
5.3.6 創建計算欄位 96
5.4 修改數據記錄 97
5.5 更改表設計 98
5.6 刪除表 102
5.7 表的連接 103
5.8 表的其他操作 106
5.8.1 表的導入 106
5.8.2 鎖定表的某些記錄 109
5.9 小結 111
第6章索引 112
6.1 概述 112
6.2 索引的基本概念 113
6.2.1 索引的結構 113
6.2.2 索引的優點和缺點 113
6.3 索引的設計准則 113
6.4 索引的類型 115
6.4.1 聚集索引與非聚集索引 115
6.4.2 唯一索引與非唯一索引 118
6.4.3 單列索引與多列索引 119
6.5 填充因子 119
6.6 創建索引 120
6.7 禁用索引 125
6.8 刪除索引 128
6.9 小結 132
第7章視圖 133
7.1 視圖概述 133
7.1.1 視圖的優點 134
7.1.2 視圖的類型 134
7.2 創建視圖 135
7.2.1 創建視圖的准則 135
7.2.2 創建視圖的方法 136
7.3 使用視圖 141
7.3.1 使用索引視圖 141
7.3.2 使用分區視圖 145
7.4 可更新的視圖 147
7.5 通過視圖來更新數據 148
7.6 更改視圖 151
7.6.1 更改視圖的名稱 152
7.6.2 更改視圖的定義 152
7.7 刪除視圖 154
7.8 小結 154
第8章資料庫的備份、還原和維護 155
8.1 概述 155
8.2 備份資料庫 156
8.2.1 備份概述 156
8.2.2 完全備份 158
8.2.3 差異備份 161
8.2.4 使用事務日誌備份 163
8.2.5 將資料庫遷移到其他系統進行備份 164
8.2.6 導入/導出 165
8.3 還原和恢復資料庫 168
8.3.1 還原方案 168
8.3.2 解決孤立用戶 169
8.3.3 還原差異資料庫備份 170
8.3.4 還原事務日誌備份 174
8.3.5 完全恢復 178
8.3.6 大容量日誌記錄恢復 179
8.4 備份和恢復系統資料庫 180
8.4.1 備份系統資料庫 180
8.4.2 還原系統資料庫 181
8.5 附加和分離資料庫 182
8.5.1 分離資料庫 182
8.5.2 附加資料庫 185
8.5.3 使用分離和附加操作來移動資料庫 187
8.6 復制 187
8.6.1 復制類型概述 188
8.6.2 執行復制 189
8.7 維護計劃和策略 195
8.7.1 維護計劃概述 195
8.7.2 如何創建維護計劃 196
8.8 小結 198
第9章存儲過程 199
9.1 存儲過程概述 199
9.1.1 存儲過程的優缺點 199
9.1.2 存儲過程的種類 200
9.2 創建存儲過程 201
9.2.1 創建自定義存儲過程時的一些注意事項 201
9.2.2 創建用戶自定義存儲過程 201
9.2.3 擴展存儲過程 203
9.2.4 存儲過程表達式語法解析 203
9.2.5 參數 211
9.2.6 游標 211
9.2.7 嵌套存儲過程 213
9.2.8 在存儲過程中使用資料庫事務處理 215
9.3 執行存儲過程 215
9.3.1 在SQL Server中執行存儲過程 215
9.3.2 在Java/JSP中調用存儲過程 216
9.4 更新存儲過程 216
9.4.1 重命名存儲過程 216
9.4.2 修改存儲過程 217
9.4.3 重新編譯存儲過程 219
9.5 刪除存儲過程 219
9.6 系統存儲過程 221
9.7 優化存儲過程 222
9.8 存儲過程分頁 222
9.9 項目示例:企業員工考勤查詢系統 226
9.10 小結 232
第10章T-SQL基礎 233
10.1 概述 233
10.1.1 T-SQL語言的特點 233
10.1.2 T-SQL語言類型 234
10.2 數據類型 234
10.3 關系代數 236
10.4 T-SQL基本語法約定 240
10.5 變數 240
10.6 運算符 243
10.7 函數 245
10.8 控制流程語句 253
10.9 小結 258
第11章高級T-SQL 259
11.1 概述 259
11.2 腳本與批處理 259
11.2.1 使用INSERT...SELECT進行批處理添加 259
11.2.2 使用INSERT TOP進行批處理添加 261
11.2.3 使用SELECT...INTO進行批處理添加 261
11.3 添加存儲過程的查詢結果 262
11.4 使用UPDATE TOP修改數據記錄 263
11.5 刪除數據記錄 264
11.5.1 使用DELETE TOP刪除數據記錄 264
11.5.2 使用帶OUTPUT子句的DELETE刪除數據記錄 264
11.5.3 使用TRUNCATE TABLE表達式刪除數據記錄 265
11.6 匯總和分組數據 266
11.6.1 使用GROUP BY 266
11.6.2 使用COMPUTE BY 268
11.7 模糊查詢 270
11.8 使用T-SQL代碼進行全文索引 271
11.9 小結 284
第12章觸發器 285
12.1 概述 285
12.2 創建觸發器 287
12.3 修改觸發器 290
12.3.1 查看觸發器 290
12.3.2 修改觸發器的定義 292
12.3.3 重命名觸發器 292
12.4 禁用與啟用觸發器 293
12.5 刪除觸發器 293
12.6 嵌套觸發器 294
12.7 遞歸觸發器 297
12.8 使用觸發器 298
12.8.1 使用觸發器概述 298
12.8.2 檢查特定的欄位是否已被修改 299
12.8.3 使用包含ROLLBACK TRANSACTION
表達式的觸發器 300
12.8.4 有條件的INSERT觸發器 301
12.8.5 指定AFTER觸發器的順序 301
12.8.6 使用INSTEAD OF觸發器更新視圖 304
12.8.7 使用TRY...CATCH表達式 306
12.8.8 使用sp_addmessage創建用戶定義錯誤消息 309
12.9 DDL觸發器、DML觸發器和CLR觸發器 309
12.9.1 DDL觸發器 309
12.9.2 DML觸發器 314
12.9.3 CLR觸發器 315
12.10 實例:員工就餐統計系統 317
12.11 小結 324
第13章作業和警報 325
13.1 概述 325
13.2 創建作業 325
13.3 管理作業 329
13.3.1 修改作業 329
13.3.2 運行作業 332
13.3.3 禁用作業 333
13.3.4 停止作業 334
13.3.5 刪除作業 335
13.4 作業響應 336
13.5 警報 338
13.5.1 創建事件警報 338
13.5.2 創建性能警報 340
13.5.3 編輯警報 341
13.5.4 刪除警報 343
13.6 操作員 343
13.6.1 創建操作員 343
13.6.2 向操作員分配警報 345
13.6.3 修改操作員 346
13.6.4 刪除操作員 348
13.7 為作業通知和警報配置SQL Server Agent Mail 348
13.8 診斷及解決作業和警報故障 349
13.9 實例:企業巡更考勤系統 350
13.10 小結 352
第14章安全 353
14.1 概述 353
14.2 身份驗證 354
14.2.1 身份驗證模式概述 354
14.2.2 身份驗證模式的更改 354
14.3 安全管理 355
14.3.1 SQL Server登錄管理 356
14.3.2 資料庫角色管理 360
14.3.3 許可權管理 361
14.3.4 應用程序角色管理 365
14.3.5 事務日誌管理 366
14.4 訪問管理 367
14.4.1 啟用Guest用戶 368
14.4.2 拒絕用戶訪問 368
14.4.3 管理對資料庫的訪問 370
14.4.4 對資料庫訪問進行授權 372
14.4.5 管理對表和列的訪問 373
14.5 數據文件安全 375
14.6 安全配置 377
安全配置策略 377
14.7 加密 380
14.8 小結 384
第15章SQL Server報表服務 385
15.1 SQL Server報表服務概述 385
15.2 報表服務體系架構 386
15.3 報表服務功能 388
15.4 安裝SQL Server報表服務 390
15.5 配置報表服務 394
15.6 創建和設計報表 399
15.7 部署報表服務 402
15.7.1 報表服務的部署模式 402
15.7.2 報表服務部署計劃 404
15.7.3 復制報表伺服器環境 406
15.8 訪問報表 407
15.9 發布報表 408
15.10 管理報表服務 411
15.10.1 管理報表服務的要求 411
15.10.2 報表伺服器管理工具 411
15.10.3 報表服務安裝的備份和還原 413
15.10.4 報表伺服器資料庫 414
15.11 小結 416
第16章商業智能開發套件 417
16.1 概述 417
16.2 BIDS圖形界面介紹 417
16.2.1 起始頁 418
16.2.2 BIDS主界面 418
16.2.3 菜單 419
16.2.4 自定義環境、工具和窗口 421
16.3 生成BI解決方案 423
16.4 設計、開發和調試SQL Server Integration Services包 426
16.5 小結 436
第17章分析服務 437
17.1 概述 437
17.2 多維數據 437
17.3 數據挖掘 438
17.4 使用分析服務 440
17.5 小結 456
第18章集成服務 457
18.1 概述 457
18.2 復制和下載文件 459
18.2.1 FTP任務 460
18.2.2 文件系統任務 463
18.3 發送電子郵件以響應事件 467
18.4 管理SQL Server對象和數據 472
18.5 小結 476
第19章性能工具 477
19.1 概述 477
19.2 資料庫引擎優化顧問 477
19.2.1 資料庫引擎優化顧問圖形用戶界面(GUI)程序 478
19.2.2 dta實用工具 484
19.3 SQL Server事件探查器(SQL Server Profiler) 489
19.3.1 SQL跟蹤 489
19.3.2 使用SQL Server事件探查器 490
19.4 小結 495
第20章配置工具 496
20.1 概述 496
20.2 報表服務配置管理器 496
20.3 SQL Server配置管理器 498
20.4 SQL Server錯誤和使用情況報告 500
20.5 SQL Server安裝中心 501
20.6 小結 502
第 2 篇 交互提高篇
第21章提高查詢性能 504
21.1 概述 504
21.2 建立索引以快速執行查詢 504
21.3 用「資料庫引擎優化顧問」來優化查詢 509
21.4 其他提高查詢性能方法 513
21.5 小結 514
第22章訪問SQL Server 2008 516
22.1 配置伺服器 516
22.2 訪問SQL Server 519
22.3 遠程訪問 522
22.4 區域網中多個SQL Server 2008互聯同步數據 524
22.5 項目實例:服務部就餐統計系統 526
22.6 小結 532
第23章SQL Server 2008與Office 2007集成 533
23.1 概述 533
23.2 SQL Server與Excel的集成 533
23.2.1 在Excel中使用SQL Server的數據 533
23.2.2 Excel數據轉入到SQL Server 536
23.3 SQL Server 2008數據挖掘外接程序 541
23.3.1 Excel表分析工具 542
23.3.2 Excel數據挖掘客戶端 550
23.3.3 數據挖掘Visio模板 556
23.4 使用SQL Server 2008和Office 2007
構造OLAP報表應用 561
23.5 小結 564
第24章Java與SQL Server 565
24.1 概述 565
24.2 使用JDBC與SQL Server進行交互 565
24.3 使用ODBC與SQL Server進行交互 567
24.4 項目實例:數字化圖書管理系統 571
24.5 小結 579
第 3 篇 項目實戰篇
第25章完整項目實例 581
25.1 概述 581
25.2 企業巡更考勤系統(B/S) 581
25.3 數字化圖書管理系統(C/S與B/S結合) 598
25.4 小結 620
實例目錄
例2-1 一次插入多行數據 27
例2-2 FORCESEEK提示 28
例2-3 使用CREATE TYPE語句創建用戶自定義表數據類型 29
例2-4 使用表值參數 29
例2-5 使用MERGE在一張表上執行更新和刪除操作 31
例2-6 新數據類型1 31
例2-7 新數據類型2 32
例2-8 新數據類型3 32
例2-9 設置系統數據類型 datetime2 32
例2-10 控制數據類型的精度 33
例2-11 新數據類型4 33
例2-12 經理和雇員之間的父子關系 33
例3-1 縮進代碼 49
例3-2 查找特定部分順序的存儲過程 53
例3-3 使用自定義模板 54
例3-4 確定結束日期早於開始日期的工作訂單 59
例4-1 創建未指定文件的資料庫 75
例4-2 創建指定數據和事務日誌文件的資料庫 76
例4-3 刪除單個資料庫 77
例4-4 刪除多個資料庫 77
例4-5 刪除資料庫快照 77
例4-6 修改資料庫名 78
例4-7 修改資料庫所有者 79
例4-8 重建系統資料庫 85
例8-1 備份到磁碟設備 159
例8-2 創建完整備份和差異備份 162
例8-3 數據合並 166
例8-4 通過OPENDATASOURCE查詢表t1 166
例8-5 通過OPENROWSET查詢表t1 166
例8-6 使用bcp 167
例8-7 通過SQL執行bcp 167
例8-8 數據轉換 167
例8-9 查找孤立用戶 170
例8-10 將用戶名對應的登錄名添加到syslogins中 170
例8-11 將用戶名映射為指定的登錄名 170
例8-12 解決dbo為孤立用戶的情況 170
例8-13 還原資料庫及差異資料庫備份 173
例8-14 還原資料庫及其差異資料庫和事務日誌備份 173
例8-15 事務日誌還原到某個標記處 177
例8-16 還原完整資料庫 179
例8-17 分離資料庫1 183
例8-18 分離資料庫2 183
例8-19 打開資料庫主密鑰 185
例8-20 對主密鑰啟用自動加密 185
例9-1 判斷存儲過程是否存在 201
例9-2 創建存儲過程 202
例9-3 帶有復雜SELECT語句的簡單過程 205
例9-4 帶有參數的簡單過程 206
例9-5 帶有通配符參數的簡單過程 207
例9-6 使用OUTPUT參數的過程 208
例9-7 使用OUTPUT游標參數的過程 209
例9-8 使用WITH RECOMPILE選項的過程 210
例9-9 使用WITH ENCRYPTION選項過程 210
例9-10 創建帶參數的儲存過程 211
例9-11 在存儲過程中使用游標 212
例9-12 在JSP中調用存儲過程 216
例9-13 重命名存儲過程 217
例9-14 修改存儲過程test 218
例9-15 在Database Engine Query中刪除存儲過程 220
例9-16 刪除擴展存儲過程 220
例9-18 staffQuery.jsp 227
例9-19 創建存儲過程kqOnDutyReport1 229
例9-20 創建存儲過程SelectCDate1 230
例12-1 發送通知郵件 288
例12-2 INSTEAD OF觸發器 288
例12-3 觸發器中IF UPDATE應用 288
例12-4 虛擬表inserted和deleted 288
例12-5 創建觸發器 289
例12-6 更新t2表中的數據 290
例12-7 查詢某個資料庫中的所有觸發器 290
例12-8 使用SQL 語句查看觸發器tg_sum的內容 291
例12-9 修改觸發器的內容 292
例12-10 修改觸發器名 293
例12-11 禁用觸發器tg_sum 293
例12-12 刪除觸發器 294
例12-13 創建操作記錄表 295
例12-14 在數據表上創建觸發器 295
例12-15 創建類別表 295
例12-16 在類別表上創建觸發器 296
例12-17 檢測表t的第二列和第三列是否被修改過 299
例12-18 觸發器回滾 300
例12-19 觸發器回滾 301
例12-20 觸發器回滾 301
例12-21 有條件的INSERT觸發器 301
例12-22 創建proct_Insert觸發器 302
例12-23 創建proct_Insert1觸發器 302
例12-24 改變觸發器次序 303
例12-25 使用Instead Of觸發器 305
例12-26 包含錯誤處理函數的存儲過程 307
例12-27 CATCH塊捕捉錯誤 308
例12-28 TRY CATCH構造處理錯誤 308
例12-29 創建用戶定義消息 309
例12-30 調用定義的錯誤消息 309
例12-31 創建用於保護資料庫中的數據表不被修改和刪除的存儲過程 312
例12-32 創建用於保護當前SQL Server伺服器里所有資料庫不能被刪除
的存儲過程 312
例12-33 創建用來記錄資料庫修改狀態的觸發器 313
例12-34 判斷庫存數量是否為0 315
例12-35 使用inserted表 316
例12-36 員工就餐統計系統 317
例13-1 添加一個沒有功能的作業 328
例13-2 添加一個具有尋呼、電子郵件和網路發送信息的作業 328
例13-3 修改作業 329
例13-5 更改原來存在的作業步驟 330
例13-6 刪除原先存在的作業步驟 331
例13-7 從作業中刪除關聯伺服器 331
例13-8 將作業指派給本地伺服器 331
例13-9 將作業指派給不同的伺服器 332
例13-10 啟動作業 333
例13-11 更改作業的名稱 334
例13-12 停止一個作業 335
例13-13 刪除一個作業 336
例13-14 為警報添加電子郵件通知 337
例13-15 創建事件警報 340
例13-16 編輯警報 342
例13-17 刪除警報 343
例13-18 設置操作員信息 345
例13-19 修改操作員信息 347
例13-20 刪除操作員 348
例13-21 企業巡更考勤系統 350
例14-1 創建登錄ID和默認資料庫 358
例14-2 創建使用其他默認語言的登錄ID 358
例14-3 創建帶有特定SID的登錄ID 358
例14-4 刪除登錄 358
例14-5 將Windows NT用戶設定為SQL Server登錄者 358
例14-6 拒絕Windows NT用戶登錄到SQL Server 359
例14-7 刪除Windows NT用戶的登錄信息 359
例14-8 顯示登錄信息 360
例14-9 將用戶添加到固定伺服器角色中 361
例14-10 創建應用程序角色 365
例14-11 刪除資料庫中的應用程序角色 365
例14-12 修改應用程序角色的密碼 366
例14-13 啟用Guest用戶 368
例14-14 啟用/禁用登錄名 368
例14-15 檢查被禁用的登錄名 368
例14-16 刪除登錄名 370
例14-17 創建資料庫角色並添加用戶 370
例14-18 判斷當前用戶 371
例14-19 刪除用戶及角色 371
例14-20 為資料庫用戶授予某種許可權 371
例14-21 創建資料庫用戶 372
例14-22 撤銷用戶授權 372
例14-24 授予用戶對表的操作許可權 373
例14-25 收回賦予給某個用戶的許可權 374
例14-26 拒絕用戶訪問 374
例14-27 授予許可權 374
例14-29 產生資料庫主密鑰 381
例14-30 產生密鑰 382
例14-31 加密數據 382
例14-32 數據解密 383
例14-33 用RC4演算法產生對稱密鑰 383
例15-1 報表伺服器的URL示例 396
例22-1 查詢當前連接所使用的協議 521
例22-2 使用連接字元串連接SQL Server 522
例22-3 創建一個鏈接伺服器 526
例22-4 服務部就餐統計系統 526
例24-1 使用JDBC連接MS SQL Server 566
例24-2 使用ODBC數據源連接MS SQL Server 571
例24-3 數字化圖書管理系統 571
例25-1 企業巡更考勤系統(B/S) 581
例25-2 數字化圖書管理系統(C/S與B/S結合) 598

Ⅳ 請各位高手給我推薦幾本資料庫(sql server)書籍!

《中文版SQL
Server
2000開發與管理應用實例》
以前CSDN社區MS
SQL
Server版大版主
鄒建
寫的。雖然書是針對2000的,但是裡面有很多經驗之談,如果懂得了基本的SQL知識可以看看。他的另一本書《深入淺出——SQL
Server
2005開發、管理與應用實例》沒看過,不知道怎麼樣。

Ⅳ SQLServer資料庫中成批導入數據的幾個常用方法

在軟體項目實施的時候,數據導入一直是項目人員比較頭疼的問題。如要把產品信息從現有的進銷存管理系統中導入到ERP系統中,卻讓企業用戶手工的輸入這些信息,不怎麼現實。
其實,在SQL Server中本來就集成了很多成批導入數據的方法。有些項目實施顧問頭疼的問題,在我們資料庫管理員眼中,是小菜一碟。現在的重點就是,如何讓用戶了解這些方法,讓數據導入變得輕松一些。
第一種方法:使用Select Into語句
若企業資料庫都採用的是SQL Server資料庫的話,則可以利用Select Into語句來實現數據的導入。Select Into語句,他的作用就是把數據從另外一個資料庫中查詢出來,然後加入到某個用戶指定的表中。
在使用這條唯輪語句的時候,需要注意幾個方面的內容。
一是需要在目的資料庫中先建立相關的表。如想把進銷存系統資料庫(SQLServer)中的產品信息表(Proct)導入到ERP系統中的產品信息表(M_Proct)中。則前期是在ERP系統的資料庫中已經建立了這張產品信息表。
二是這種方法只復製表中的數據,而不復製表中的索引。如在進銷存系統數據中的產品信息表中,在產品編號、產品種類等欄位上建立了索引。則利用Select Into語句把數據復制到ERP系統的表中的時候,只是復制了數據內容的本身,而不會復制索引等信息。
三是這條語句使用具有局限性。一般情況下,這只能夠在SQL Server資料庫中採用。不過胡山蘆,對於SQL Server不同版本的資料庫,如2008或者2003,還都是兼容的。若需要導入的對象資料庫不是SQL Server的,則需要採用其他的方法。
四是採用這條語句的話,在目的表中必須不存在數據。否則的話,目的表中的數據會被清除。也就是說,這個語句不支持表與表數據的合並。在SQL Server中,有一條類似的語句,可以實現這個功能。這條語句就是:Insert Into。他的作用就是把另外一張表中的數據插入到當前表中。若用戶想要的時表與表數據的合並,則可以採用這條語句。兩者不能夠混淆使用,否則的話,很容易導致數據的丟失。
五是以上兩條語句都支持兼容的不同類型的數據類型。如在原標中,某個欄位的數據類型是整數型,但是在目的表中這個欄位的數據類型則是浮點型,只要這個兩個數據類型本來就兼容的,則在導入的時候,資料庫是允許的。
第二種方法:利用Excel等中間工具進行控制
雖然第一種方法操作起來比較簡單,但是其也有一些缺點。如他只支持同一種類型的資料庫;不能夠對數據進行過多的干預等等。一般情況下,若用戶原數據准確度比較高,不需要過多的修改就可以直接拿來用的話,則筆者就已採用第一種方式。
但是,若在原資料庫中,數據的准確度不是很高,又或者,有很多數據是報廢的。總之,需要對原數褲帶據庫的數據進行整理,才能夠使用的情況,筆者不建議先導入進去,再進行更改。筆者在遇到這種情況時,喜歡利用Excle作為中間工具。也就是說,先把數據中原資料庫中導到Excle中。有些資料庫,如Oracle資料庫,他不支持Excle格式。但是,我們可以把它導為CSV格式的文件。這種文件Excle也可以打得開。
然後,再在Excle中,對記錄進行修改。由於Excle是一個很強的表格處理軟體,所以,其數據修改,要比在資料庫中直接修改來得方便,來得簡單。如可以利用按時間排序等功能,把一些長久不用的記錄清楚掉。也可以利用替換等功能,把一些不規范的字元更改掉。這些原來在資料庫中比較復雜的任務,在Excle等工具中都可以輕松的完成。
等到表中的內容修改無誤後,資料庫管理員就可以把Excle表格中的文件直接導入到SQL Server資料庫中。由於SQL Server與Excel是同一個父母生的,所以,他們之間的兼容性很好。在Sql Server中提供了直接從Excel文件中導入數據的工具。
雖然這要藉助中間工具導入數據,但是,因為其處理起來方便、直觀,所以,筆者在大部分時候都是採用這種方式。
第三種方式:使用數據轉換服務導入數據
數據轉換服務是SQL Server資料庫中提供的一個非常強大的工具。在SQLServer中,數據轉換功能有一個圖形用戶介面,用戶可以在圖形界面中導入數據,並對數據進行相應的我。
另外,數據轉換服務還支持COM組件的編程介面。這也就是說,在前台應用程序開發的時候,可以直接調用數據轉換服務。讓用戶通過前台應用系統,而不用在後台資料庫系統進行任何的操作,就可以把數據導入資料庫系統中去。在前台對資料庫系統進行導入,有一個明顯的好處,就可以預先對數據的合法性進行檢查。如可以利用VB等腳本語言對數據進行檢驗、凈化和一定的轉換,以符合目的資料庫的需要。
如在員工信息表中的婚姻狀況欄位,在Oracle資料庫系統中,可能是用0或者1來表示婚姻狀況。0表示未婚,1表示已婚。而在SQL Server資料庫中,則利用Y或者N來表示婚姻狀況。Y表示已婚,N表示未婚。在導入數據的時候,若直接把Oracle資料庫表中的數據導入到SQL Server資料庫中,因為婚姻狀況這個欄位存儲的內容類型不同,所以,不能夠直接導。遇到這種情況的話,則就可以在導入數據之前,先利用腳本語言對數據類型進行驗證。若不符合要求的,則可以通過腳本語言對數據進行一定的轉換,把0轉換為N,把1轉換為Y等等。
所以,有時候程序員在開發前台應用程序的時候,若要開發數據導入功能的話,我們都是建議採用這個數據轉換服務。不但有現成的介面,而且,還可以對數據進行驗證與一定程度的轉換。另外,數據轉換服務的數據導入效率非常的高。即使通過前台程序調用,其性能也比其他方法在同等條件下,要高一個檔次。而且,隨著數據量的增加,數據轉換服務的優勢會越來越明顯。
不過,在前台應用程序調用數據轉換服務的時候,需要注意。數據轉換服務提供的COM介面比較復雜,所以,前台程序調用數據轉換服務的代碼也比較復雜。若再加上一些腳本語言的話,可能處理起來更加的繁瑣。故一般只有在大型系統上才會用到這個介面。若數據不多,否則不需要復雜驗證與轉換的話,利用這個介面是大刀小用,得不償失。
第四種方式:異構資料庫之間的導入導出
雖然第二種、第三種方式都可以完成異構資料庫之間數據的導入導出作業。考試.大提示在SQL Server中,還提供了另外一種解決方案。即直接在SQL Server資料庫中連接到其他類型的資料庫上,然後採用Select Into等語句實現數據的導入作業。
在SQL Server中,提供了兩個函數可以幫助我們實現對非SQL Server資料庫的連接。這兩個函數分別為Opendatesource與Openrowset。他們的功能基本相同,只是在細節上有所差異。
如Opendatesource這個函數至能夠打開源資料庫的表和視圖,而不能夠對其進行過濾。若用戶只想把源表中的部分數據導入到SQL Server資料庫的表中,則不能對源表直接進行過濾。過濾的動作需要在SQL Server資料庫中進行。而Openrowset這個函數,可以在打開對方資料庫的表或者視圖的時候,直接利用Where等條件限制語句對記錄進新過濾。為此,在實際應用中,還是Openrowset這個函數使用的頻率比較高。
不過由於其需要用戶寫復雜的參數,而且,又不能夠提供復雜的數據驗證功能,所以在實際工作中用的並不是很多。在一些小的應用系統中,偶爾還可以見到其的蹤影。在一些大的成熟的商業軟體中,很少採用這種方式,對數據進行導入。
有時候,選擇多了,用戶反而不知道如何下手。筆者平時最喜歡採用的是第二種處理方式。他比較直觀,而且,可以對數據進行成批的更改與整理。但是,其缺陷就是效率比較低,特別是Excle軟體對於處理大量記錄的時候,速度比較慢。若這種方式行不通的話,則筆者比較傾向於採用數據轉換的處理方式。這個操作起來雖然比較復雜,但是,其可以提供比較復雜的驗證,而且可以在圖形化的界面中對數據進行修改,同時效率也比較高。