程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server 2000 與 SQL Server 7.0 版兼容性問題

SQL Server 2000 與 SQL Server 7.0 版兼容性問題

編輯:關於SqlServer

Microsoft® SQL Server™ 2000 與 SQL Server 7.0 在大多數方面是兼容的。這部分描述從 SQL Server 7.0 升級到
SQL Server 2000 時的向後兼容性問題:

客戶端網絡實用工具和命名實例


多服務器作業和命名實例


升級 SQL Server 6.5 客戶端軟件


身份驗證模式


在遠程表上所執行操作的 ROWCOUNT 設置


服務器配置選項


恢復模型和數據庫選項


保留關鍵字


SQL 事件探查器擴展存儲過程


SQL 查詢分析器中的默認連接選項設置


bcp 實用工具


來自早期版本可視化數據庫設計工具的數據庫關系圖


數據轉換服務


指定信任連接


SQL-DMO 中的擴展對象


SQL-SCM


English Query 和 SQL Server 7.0 OLAP 服務
客戶端網絡實用工具和命名實例
當使用來自 SQL Server 7.0 或其早期版本的 SQL Server 客戶端連接組件時,在連接到 SQL Server 2000 的命名實例之
前,必須使用客戶端網絡實用工具設置別名。例如,若要在 SQL Server 7.0 客戶端上連接 SQL Server 2000 命名實例,
必須添加指向 \computernamepipeMSSQL$instancenamesqlquery 的別名。如果使用別名
computernameinstancename,客戶端可按 SQL Server 2000 客戶端所做的那樣,通過指定該別名進行連接。對於
TCP/IP 套接字和 NWLink IPX/SPX Net-Library,則必須使用客戶端網絡實用工具在客戶端定義別名,該客戶端指定了端
口地址,在該端口地址上可以監聽命名實例。

多服務器作業和命名實例
當使用主服務器和目標服務器時,SQL Server 7.0 不能與 SQL Server 2000 命名實例相互操作。若想一起使用 SQL
Server 7.0 實例和 SQL Server 2000 實例以進行 MSX/TSX 操作,必須使用 SQL Server 2000 的默認實例而不是其命名
實例。

升級 SQL Server 6.5 客戶端軟件
當在服務器上運行 SQL Server 6.5 版實例時,適用於下列問題:

若想從 SQL Server 6.5 客戶端軟件升級到 SQL Server 2000 客戶端軟件,並且有使用默認 Net-Library 的應用程序,
則必須使用客戶端網絡實用工具使命名管道或多協議作為默認 Net-Library,才能進行 Windows 身份驗證連接。

身份驗證模式
SQL Server 2000 可以在兩種安全(身份驗證)模式下運行:

Windows 身份驗證模式(Windows 身份驗證)


混合模式(Windows 身份驗證和 SQL Server 身份驗證)
混合模式允許用戶使用 Windows 身份驗證或 SQL Server 身份驗證進行連接。通過 Microsoft Windows NT® 4.0 或
Windows 2000 用戶帳戶連接的用戶可以在 Windows 身份驗證模式或混合模式下使用信任連接(由 Windows NT 4.0 或
Windows 2000 驗證的連接)。

提供 SQL Server 身份驗證是為了向後兼容。SQL Server 身份驗證的一個例子是:創建單個 Microsoft Windows® 2000
組,將所有必要的用戶添加到該組中,然後授於這個 Windows 2000 組登錄 SQL Server 及訪問任何所需數據庫的權限。

在遠程表上所執行操作的 ROWCOUNT 設置
當將數據庫兼容級別設置成 80 時,在 SQL Server 2000 中的遠程表上執行的 INSERT 語句不支持 ROWCOUNT。對於這些
INSERT 操作,將忽略 SET ROWCOUNT 選項。

SQL Server 7.0 支持在遠程表上執行的 INSERT 語句的 ROWCOUNT 設置。



服務器配置選項
SQL Server 2000 不支持下列服務器配置選項。

default sortorder id resource timeout
extended memory size spin counter
language in cache time slice
language neutral full-text unicode comparison style
max async IO unicode locale id


有關配置選項的更多信息,請參見設置配置選項和 sp_configure。

恢復模型和數據庫選項
Microsoft® SQL Server™ 2000 提供下列恢復模型,用以簡化恢復計劃、簡化備份和恢復過程以及闡明系統操作要求之間
的折衷:

簡單恢復


完全恢復


大容量日志記錄恢復
每一個模型都針對性能、磁盤和磁帶空間以及保護數據丟失的不同需要。

在 SQL Server 7.0 和早期版本中,通過 trunc. log on chkpt 和 select into/bulkcopy 數據庫選項的組合設置來提供
類似的功能。trunc. log on chkpt 和 select into/bulkcopy 數據庫選項可通過使用 sp_dboption 存儲過程來設置。

下表將 trunc. log on chkpt 和 select into/bulkcopy 的設置映射到新恢復模型。


如果 trunc. log on chkpt 是: 且 select into/bulkcopy 是:
則恢復模型是:
FALSE FALSE FULL
FALSE TRUE BULK-LOGGED
TRUE TRUE SIMPLE
TRUE FALSE SIMPLE




說明 如果升級某個數據庫,而此數據庫中的 trunc. log on chkpt 和 select into/bulkcopy 選項設置為真,select
into/bulkcopy 設置為假,則強制此數據庫為簡單恢復模型。

>>>更多專題請看SQL Server SQL Server故障 SQL Server問題專題



為保持向後兼容,SQL Sever 2000 支持 trunc. log on chkpt 和 select into/bulkcopy 數據庫選項,但在以後的版本
中可能不再支持。

在 SQL Server 2000 中,ALTER DATABASE Transact-SQL 語句提供 SET 子句用以指定數據庫選項,包括恢復模型。有關
數據庫選項的更多信息,請參見設置數據庫選項和 ALTER DATABASE。

保留關鍵字
在 SQL Server 2000 中,這些關鍵字不再是保留關鍵字:AVG、COMMITTED、CONFIRM、CONTROLROW、COUNT、ERROREXIT、
FLOPPY、ISOLATIO


您正在看的SQLserver教程是:SQL Server 2000 與 SQL Server 7.0 版兼容性問題。N、LEVEL、MAX、MIN、MIRROREXIT、ONCE、ONLY、PERM、PERMANENT、PIPE、PREPARE、PRIVILEGES、
REPEATABLE、SERIALIZABLE、SUM、TAPE、TEMP、TEMPORARY、UNCOMMITTED、WORK。

在 SQL Server 2000 中,這些關鍵字是保留關鍵字:COLLATE、FUNCTION、OPENXML" target=_blank>XML

SQL 事件探查器擴展存儲過程
在 SQL Server 2000 中不支持 SQL 事件探查器擴展存儲過程,如 xp_trace_addnewqueue 和
xp_trace_generate_event。它們由一組新存儲過程和系統用戶定義函數替換。有關更多信息,請參見創建並管理跟蹤和模
板。

SQL 查詢分析器中的默認連接選項設置
在 SQL Server 7.0 版及其早期版本中,

SQL 查詢分析器中 SET QUOTED_IDENTIFIER 的默認設置為 OFF。在 SQL Server
2000 中,SQL 查詢分析器中的默認設置為 ON,這也是 ODBC 和 OLE DB 的默認設置。此外,SQL Server 2000 中的許多
新特性(如索引視圖和計算列上的索引)都要求該選項為 ON。



說明 當 QUOTED_IDENTIFIER 設置為 ON 時,如果對字符串使用雙引號,則將收到語法錯誤。


bcp 實用工具
若要在 SQL Server 2000 中讀取由 DB-Library bcp 的早期版本創建的字符文件,請使用 -V 開關。有關更多信息,請參
見 bcp 實用工具。

來自早期版本可視化數據庫設計工具的數據庫關系圖
對於擁有使用早期版本可視化數據庫設計工具創建的數據庫關系圖的用戶:

如果在 SQL Server 2000 數據庫上使用的第一個可視化數據庫工具的版本比 SQL Server 2000 中的工具早,則 SQL
Server 企業管理器不能在該數據庫中打開或創建數據庫關系圖。任何這種嘗試都將導致錯誤:
ODBC error: [Microsoft][ODBC SQL Server Driver][SQL Server]Could not find stored
procedure 'dbo.dt_getobjwithprop_u'.

有幾種可將數據庫置於這種狀態的可視化數據庫工具。這些工具包括在 SQL Sever 7.0 及其早期版本中的查詢設計器、視
圖設計器、數據庫設計器和表設計器,以及許多用於枚舉數據庫對象的工具。在 Microsoft Access 2000 和 Microsoft
Visual Studio® 6 中也有這些工具。

在數據庫上運行下列腳本將使 SQL Server 企業管理器可以處理該數據庫中的數據庫關系圖:

alter table dbo.dtpropertIEs add uvalue nvarchar(255) null
go
if exists(select * from dbo.dtproperties) exec('update dbo.dtpropertIEs set uvalue = convert(nvarchar
(255), value)')
go

該腳本運行後,SQL Sever 2000 中的 SQL Sever 企業管理器和可視化數據庫工具的早期版本都可以訪問該數據庫中的數
據庫關系圖。當對 SQL Server 2000 數據庫使用數據庫工具的早期版本時,還要考慮其它問題。有關更多信息,請參見
SQL Server 2000 的硬件和軟件安裝要求。

數據轉換服務
以下是數據轉換服務 (DTS) 的向後兼容性問題。

擴展 DTS 對象
數據轉換服務 (DTS) 中的某些對象在 SQL Server 2000 中得到了擴展。 有關在 SQL Server 7.0 及其早期版本中使用新
的數據轉換服務對象、方法及屬性的更多信息,請參見擴展 DTS 對象。

復制 SQL Server 對象任務
當在 SQL Server 2000 和 SQL Server 7.0 的實例之間復制數據庫對象時,在使用復制 SQL Server 對象任務
(Microsoft SQL Server 7.0 版中的傳輸 SQL Server 對象任務)上有限制。有關更多信息,請參見復制 SQL Server 對
象任務。

在 SQL Server 7.0 或其早期版本上運行 DTS 包
在 SQL Server 2000 的實例上創建的 DTS 包不能裝載到或運行於 SQL Server 7.0 版(或早期版本)的實例上。如果試
圖這麼做,則可能會收到下面消息中的一個:

"無效的類字符串。"


"參數不正確。"
兩條消息都指明:當前的服務器並不包含用於裝載該包所必須的所有組件,並且不能支持在 DTS 包中所定義的對象(例如
任務及轉換)。

但是,如果收到這兩條消息中的一條,仍然可以在 SQL Server 2000 實例上打開並運行包。

使用具有不同的排序規則、不同的代碼頁和非 Unicode 數據的 DTS
當使用復制 SQL Server 對象任務和復制列轉換在 Microsoft SQL Server 2000 和 Microsoft SQL Server 7.0 實例之間
復制非 Unicode 數據時,使用不同的代碼頁和排序規則會出現問題。有關更多信息,請參見數據變換和轉換注意事項。



指定信任連接
在 SQL Server 7.0 中,不必在連接字符串中為 ADO、OLE DB 或 ODBC 編寫"trusted_connection=yes"代碼即可獲得信任
連接。如果未指定 UID 和PASSWord,SQL Server 將默認為嘗試信任連接。而在 SQL Server 2000 中,必須編
寫"trusted_connection=yes"代碼才能獲得信任連接。

SQL-DMO 中的擴展對象
SQL-DMO 中的某些對象在 SQL Server 2000 中得到了擴展。有關在 SQL Server 7.0 或其早期版本中使用擴展 SQL-DMO
對象、方法及屬性的更多信息,請參見擴展 SQL-DMO 對象程序設計。

SQL-SCM
SQL-SCM(服務控制管理器)API 已刪除,不再受到支持。

English Query 和 SQL Server 7.0 OLAP 服務
對於想要安裝或卸載 English Query 的SQL Sever 7.0 OLAP 服務的用戶,將會發生下列問題:

在安裝期間必須停止運行 SQL Sever 7.0 OLAP 服務。在安裝 English Query 之前必須關閉 OLAP 服務。(請參見"控制
面板"中的"服務"應用程序。)


如果已安裝了 SQL Server 7.0 OLAP 服務並且卸載 English Query,則必須重新安裝 OLAP 服務。相反,如果已安裝了
English Query 並且卸載 OLAP 服務,則必須重新安裝 English Query 以維護 OLAP 連通性。
在 SQL Server 2000 Analysis Services(即以前的 OLAP Services)中不會發生上述問題。

>>>更多專題請看SQL Server SQL Server故障 SQL Server問題專題

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved