top
Loading...
SQLServer2005相關技術討論

網友: SQL 2005在災難還原方面有哪些技術?能否簡要介紹一下這些技術的原理和實現方法?

胡百敬: Backup/Restore、Clustering、Database Mirroring、Database Snapshot、Replication。

網友: 胡老師 SQL SERVER 的數據與ACCESS 數據交互 能用作業實現嗎?

胡百敬: 看你的需求,你可以建立 linked server 連結到 Access,然后就可以直接以 SQL 語法存取,自然可以建立作業。

網友: 對于數據分析服務這塊的看法是什么?

胡百敬: 就臺灣的產業而言,因為制造與服務導向,需要節約各種成本,以及比客戶更了解客戶的需求,因此很重視對資料的深入分析。 AS 2005 比 2000 的功能龐大了一倍以上,且從設計的理念有根本上的差異,雖然還是保持了向前兼容,但若真要好好發揮 AS 2005,恐怕要重新考慮,重新設計。

網友: 如何處理海量數據,比如:導出、備份、查詢等。

胡百敬: 切割功能、使用者、數據存放。數據再大量,都會有 80-20 的分布,80% 的人只用 20% 的數據,80% 的功能用 20% 的運算力就可以滿足。將耗資源,不常用的大量數據與常用的功能切開。

網友: 能不能說說sql server的tsql與標準sql有什么區別?

胡百敬: T-SQL 是 ANSI SQL 的延伸,盡量支持 ANSI SQL 的規范,但若說最為符合的交集是 ANSI SQL 92,其后 ANSI SQL 99 和 2003 都只能陸陸續續增加支持。但 T-SQL 本身也有一大堆自家的特色。因此,若你需要跨不同的 DB,或是未來的趨勢,可能需要稍為暸解 ANSI SQL,否則,若專注 SQL Server,則只需要讀懂 T-SQL 就夠了。

網友: 為什么SQL SERVER 2005那么占內存

姚巧枚: 這個部份可能要看你如何使用,才能了解為什么會那么占內存。

網友: 請問胡老師,nonclustered index中,會對主鍵排序么?

胡百敬: Primary Key 和 Nonclustered index 不可以混為一談,Primary key 的基本要求是 unique、not null,另外,我們會選擇符合需求的最小長度字段。而 Nonclustered index 就是數據表本身照所選擇的索引字段順序擺放。所以 Nonclustered index 就是數據表。換句話說,若你兩者選的字段相同,自然就是相同的排序,若兩者選擇不同,PK 會有獨立的索引結構,而 Clustered index 直接排序整個數據表。

網友: 怎么找出長時間沒有使用過的存儲過程嗎。還有出錯的存儲過程。還有有的存儲過程和函數執行時間太長,造成死鎖有什么好辦法嗎?

胡百敬: SQL Server 的 Profiler 可以錄制 SQL Server 的使用,你可以錄制一段時間后,再分析 SQL Server 的使用。其實,我一直強調切割,過大的預存程序、數據表...沒有效率也不好維護。同時會造成 lock、block、dead lock 等等。或許 SQL Server 2005 你可以用 Profiler 錄制并分析 dead lock 等成因。若在 2000 則需要透過 DBCC TRACEON(1204,3605)。

網友: sqlserver 32位版 與 64位版 性能差距有多大?

胡百敬: 這樣的詢問有些空泛,我比較建議先商借機器測試。一般來說 64 bit 一定比 32 bit 好,但好多少,要看你的數據庫設計,存取方式...無法一概而論。

網友: 有沒有辦法sql server的數據轉換到mysql中?

胡百敬: 我沒有實際試過...但若 mysql 支持 OLEDB、ODBC 就應該可以透過 SSIS 或 2000 的 DTS 轉換若實在不行,一般我們會直接轉成文本文件,如 csv,在用對方的工具轉入。應該沒有問題

網友: 請鄒老大解釋一下字段是什么?

鄒建: 字段是表的列的集合, 表的縱軸。

網友: 能談談自增字段的工作原理嗎?

胡百敬: 設定字段啟動 identity 屬性,并設定初始值(initial value)和遞增值即可例如 create table tbl(c1 int identity(1,1))

網友: 處理海量數據時應遵循那些原則。

胡百敬: 切割需求、存放、使用人、批處理時間... 早期測試,調整架構小心設計索引避免長時間交易。

作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗