运行升级向导之后,检测到系统出现的问题如下:
一、在 90 或更高的兼容模式下,FOR XML AUTO 查询返回派生表引用
请考虑下表:
CREATE TABLE Test(id int);
INSERT INTO Test VALUES(1);
INSERT INTO Test VALUES(2);
下面包括派生表的查询在兼容级别分别为 80、90 或更高时产生不同的结果:
SELECT * FROM
(SELECT a.id AS a, b.id AS b
FROM Test a JOIN Test b ON a.id=b.id)
AS DerivedTest
FOR XML AUTO;
当兼容级别为 80 时,查询返回以下结果。结果引用派生表的基表别名 a
和 b
,而非派生表别名。
<a a="1"><b b="1"/></a><a a="2"><b b="2"/></a>
当兼容级别为 90 或更高时,查询返回针对派生表别名
DerivedTest
的引用,而非针对派生表基表的引用。
<DerivedTest a="1" b="1"/><DerivedTest a="2" b="2"/>
根据要求修改应用程序,以解决 FOR XML AUTO 查询(包括派生表并且在 90 或更高的兼容级别下运行)的结果发生变化这一问题。
二、删除对未记录的系统表的引用
在早期版本中未记录的许多系统表都已更改或不再存在,因此,如果使用这些表,在升级到 SQL Server 2008 之后可能会出现错误。由于升级顾问查找的是针对系统表名称的引用,因而它将报告任何与系统表同名的用户表。
三、全文搜索已在 SQL Server 2008 中发生更改
若干个全文搜索功能、设置和对象已在 SQL Server 2008 中得到修改,并且升级时不会维护许多现有设置。
四、在 90 或更高的兼容模式下不支持外部联接运算符 *= 和 =*
升级顾问检测到使用了外部联接运算符 *= 和 =*。在 90 或更高的兼容模式下不支持这两个运算符。升级到 SQL Server 2008 时,用户数据库将保持其兼容模式。在 80 兼容模式下,支持用于外部联接的 *= 和 =* 运算符,但会显示一条警告消息。如果将数据库兼容模式改为 90 或更高,则使用这两个运算符的语句将失败。
在将数据库兼容模式改为 90 或更高之前,将使用外部联接运算符 *= 和 =* 的语句修改为使用等效的 OUTER JOIN 关键字。下面的示例显示了使用 *=
运算符的查询和使用 LEFT OUTER JOIN
关键字的等效查询。
-- This query uses an old-style outer join operator.
USE pubs
SELECT employee.job_id, employee.emp_id,
employee.fname, employee.minit, jobs.job_desc
FROM employee, jobs
WHERE employee.job_id *= jobs.job_id
ORDER BY employee.job_id
-- This query uses the ANSI standard keywords LEFT OUTER JOIN.
USE pubs;
SELECT employee.job_id, employee.emp_id,
employee.fname, employee.minit, jobs.job_desc
FROM employee LEFT OUTER JOIN jobs ON
employee.job_id = jobs.job_id
ORDER BY employee.job_id
五、在 SQL Server 2005 或更高版本中,ORDER BY 子句中的列别名不能以表别名作为前缀。
执行出错的排序:
USE AdventureWorks;
GO
SELECT FirstName AS f, LastName AS l
FROM Person.Contact p
ORDER BY p.l
可改为:
USE AdventureWorks;
GO
SELECT FirstName AS f, LastName AS l
FROM Person.Contact p
ORDER BY l
USE AdventureWorks;
GO
SELECT FirstName AS f, LastName AS l
FROM Person.Contact p
ORDER BY p.LastName
分享到:
相关推荐
### 从SQL Server 2000升级至SQL Server 2008 R2的关键知识点 #### 一、系统及浏览器需求 - **操作系统要求**: - Windows XP SP3 及其以上版本 - Windows Vista SP1 及其以上版本 - Windows 7 - Windows 2008 ...
在将SQL Server 2005升级至SQL Server 2008的过程中,涉及的知识及技巧涵盖了从理解新版本特性到优化、安全、开发、维护高可用性数据库、数据仓库构建和报告服务使用的广泛范围。以下将详细介绍升级过程中需要注意的...
SQL Server Migration是指从低版本的SQL Server升级到高版本的过程,本文档将详细介绍从SQL Server 2000升级到SQL Server 2014的步骤和注意事项。 SQL Server 2000升级到SQL Server 2014的步骤 1. Detach / Backup...
先将 SQL Server 2000 的 db 备份出来,然后将备份文件 restore 至新的 SQL Server 2005 实例中。 优点:安全。在新的 db 测试通过,就可以删除旧的 db,如果测试通不过,还可以撤换回原来的数据库,不至于中止业务...
public class SQLServer2000Connection { public static void main(String[] args) { String url = "jdbc:sqlserver://localhost:1433;databaseName=myDB"; String username = "myUser"; String password = ...
《SQL Server 2000升级至2005:策略与实践》 在IT行业中,随着技术的不断进步和企业需求的日益增长,数据库系统的升级成为了一个不可避免的过程。从SQL Server 2000升级至2005,不仅意味着获取更先进的功能和更高的...
1、如果是从SQL2008升级到SQL2008R2那么只能选择左侧“安装”对应右侧“从SQL SERVER 2000,SQL 2005或SQL 2008升级”这个选项来升级。 大家也注意到有一个“维护”但是这个选项是“从SQL 2008其他例如EXPRESS版本...
首先,`SQLServer2000版本的驱动包`是指用于与SQL Server 2000数据库进行连接的Java驱动程序。在Java编程中,我们通常使用JDBC(Java Database Connectivity)接口来与各种数据库进行交互。对于SQL Server,微软提供...
"jdbc:sqlserver://localhost:1433;databaseName=myDB", "username", "password"); ``` 在这个例子中,`com.microsoft.sqlserver.jdbc.SQLServerDriver`是驱动的类名,`jdbc:sqlserver://localhost:1433`是数据库...
本篇将详细阐述将SQL Server 2000升级到SQL Server 2005的过程中涉及的重要知识点。 首先,SQL Server 2005作为SQL Server 2000的后续版本,引入了诸多新特性与性能优化,例如增强的安全性、改进的查询性能、更丰富...
将Sql Server 2000中的数据库备份文件还原到sql2005中 将Sql Server 2000中的数据库备份文件还原到Sql Server 2005中是一个常见的问题。在这个过程中,我们需要了解Sql Server 2000和Sql Server 2005之间的差异,...
Microsoft SQL Server 2000 是微软公司推出的一款关系型数据库管理系统,它在20世纪末至21世纪初广泛应用于各种业务环境中,提供了高效的数据存储和管理功能。然而,随着时间的推移,系统漏洞、安全问题和性能瓶颈...
sqlserver2000个人版 sqlserver2000企业版 sqlserver2000开发版
压缩包内附带链接服务器创建脚本方式,此SQL Server Native Client 10.0无病毒,有64位和32位可供选择。...安装完SQL Server Native Client 10.0后再创建个链接服务器,可以实现高版本SQLserver远程链接SQLserver2000。
根据提供的文件信息,以下是对SQL Server 2008与SQL Server 2000使用说明的知识点展开: 一、SQL Server版本的安装与服务管理 1. 安装注意事项 在安装SQL Server 2008和SQL Server 2000时,需要注意的是,如果在同...
二、安装 SQL Server 2000 SP3 补丁 安装 SQL Server 2000 SP3 补丁需要遵循以下步骤: 1. 双击软件chs_sql2ksp3.exe,解压缩文件夹 sql2ksp3。 2. 选择“是”,在 C 盘创建文件夹 sql2ksp3。 3. 转到 C 盘目录下...
描述中提到的“此驱动包只有在sql server 2000 升级到sp3或sp4才能正常使用”,这表明为了确保驱动包能正常工作,SQL Server 2000需要安装最新的服务包(Service Pack),至少是SP3或SP4。服务包是微软发布的软件...
jdbc连接sqlserver2000数据库的驱动包;包含msbase jar mssqlserver jar msutil jar 注意事项:下载解压sql包 数据源驱动 rar文件 解压后的驱动包文件应放到固定的文件夹下 以避免再次打开程序运行时 系统能找到驱动...
5. **兼容性**:虽然SQL Server Native Client 10.0主要针对SQL Server 2005和2008设计,但也能与SQL Server 2000兼容。不过,需要注意的是,某些新特性可能在旧版本的SQL Server上不适用。 6. **错误处理和调试**...
此链接库针对使用机器码 API (ODBC、OLE DB 和 ADO) 的应用程序提供运行时间支持,以连接到 Microsoft SQL Server 2000、2005 或 2008。SQL Server Native Client 应该用来建立新的应用程序,或者加强需要利用新 SQL...