从Sybase向SQL Server移植数据库

简介

我最近参与了将一个Sybase数据库移植到Microsoft SQL Server 2000上的项目,我在这一项目上获得的经验,将对Sybase数据库管理员把Sybase数据库移植到SQL Server 2000平台上有一定的帮助。

尽管二者之间的一些差别是相当大的,例如Sybase数据库管理系统中的存储过程在SQL Server就不能被编译,而其它差别则不太大。在完成这一转换前,对脚本文件和存储过程中编程逻辑的行为和结果进行测试是很有必要的。

在下面的部分中,我们将讨论这二种数据库系统之间的一些主要的不同点,在移植的规划阶段,我们必须仔细研究这些区别。

数据兼容模式

对SQL Server 2000和Sybase之间的一些兼容性差别的一个临时性解决方案是改变SQL Server中的数据库兼容性级别,使之与Sybase相符。为此,我们可以使用sp_dbcmptlevel存储过程。

下面表中的语句和结果显示出不同版本数据库之间的差别:

(Untitled-1)

注意:

1、当兼容性模式被设置为70时,下面的词汇不能被用作对象名和标识符:BACKUP、DENY、PRECENT、RESTORE和TOP。

2、当兼容性模式被设置为65时,下面的词汇不能被用作对象名和标识符:AUTHORIZATION、CASCASE、CROSS、DISTRIBUTED、ESCAPE、FULL、INNER、JOIN、LEFT、OUTER、PRIVILEGES、RESTRICT、RIGHT、SCHEMA和WORK。

下面是sp_dbcmptlevel的语法:

sp_dbcmptlevel [[@dbname=] name][,[@new_cmptlevel=]version]

@dbname是用于检查和改变兼容性水平的数据库名字。

@new_cmptlevel决定数据库被设置的兼容性水平(将它设置为70、65、60,缺省值为NULL)。

例如:

sp_dbcmptlevel pubs

这一行代码返回下面的结果:

时间: 2024-12-31 02:42:51

从Sybase向SQL Server移植数据库的相关文章

Java成功访问SQL Server 2000数据库的方法

server|sql|访问|数据|数据库 摘要:本文主要介绍采用JDBC.ODBC接口实现了与SQL Server2000数据库的连接,并利用Java应用程序对其进行访问,同时通过图形用户界面实现了简单的查询功能. 关键词:Java,SQL Server,数据库 前言 数据库技术和网络技术是当今计算机领域的两大热门话题,数据库技术自产生以来,在技术上已发展成熟.而作为前端访问的开发工具和环境仍处在不断完善和发展之中,除了网络上使用的ASP.PHP.JSP作为前端连接数据库技术外,小型系统上常用访

用Java访问SQL Server 2000数据库

摘要:本文主要介绍采用JDBC.ODBC接口实现了与SQL Server2000数据库的连接,并利用Java应用程序对其进行访问,同时通过图形用户界面实现了简单的查询功能. 关键词:Java,SQL Server,数据库 前言 数据库技术和网络技术是当今计算机领域的两大热门话题,数据库技术自产生以来,在技术上已发展成熟.而作为前端访问的开发工具和环境仍处在不断完善和发展之中,除了网络上使用的ASP.PHP.JSP作为前端连接数据库技术外,小型系统上常用访问数据库技术有Delphi.Visual

ASP视频教程:备份和还原SQL Server 2000数据库

大家在初学ASP程序的时候,我们经常第一个任务就是配置环境!在这里根据网页教学网站长的经验,有时克隆版的XP系统有时是安装不了IIS的!前面我们已经讲解了ASP视频教程:制作网站前台首页,本讲主要讲述备份和还原SQL Server 2000数据库.大家请看视频教程.

SQL Server 清除数据库日志脚本

SQL Server 清除数据库日志脚本 清除mssql数据库日志的代码: Use master go declare @dbname varchar(50) declare temp_cur cursor scroll for select name from sysdatabases open temp_cur fetch first from temp_cur into @dbname while @@fetch_status =0  begin   exec ('backup log [

SQL Server 2000数据库文件组织形式

server|数据|数据库 一.数据文件类型: 每个SQL Server 2000数据库都有一个主数据文件,可以有多个辅数据文件,后者只能供该数据库使用. 二.数据文件命名: 每个数据文件都是一个独立的操作系统文件.主数据文件通常以.mdf为文件后缀(该后缀不是必须的,但对于文件的识别比较有用).主数据文件将数据存储在表格或索引中,它包含数据库的启动信息.它还包含一些系统表格,这些表格记载数据库中的对象,如数据库中所有的其它文件(辅数据文件和事务处理日志文件)的位置信息. 每个辅助数据文件通常都

SQL SERVER 2005数据库镜像(1)

本文对SQL SERVER 2005数据库镜像进行了教程式的讲解,具体内容包括:介绍.动态.可用性场景.实现和高可用性技术,供大家参考! 概述 数据库镜像是SQL SERVER 2005用于提高数据库可用性的新技术.数据库镜像将事务日志记录直接从一台服务器传输到另一台服务器,并且能够在出现故障时快速转移到备用服务器.可以编写客户端程序自动重定向连接信息,这样一旦出现故障转移就可以自动连接到备用服务器和数据库. 自动进行故障转移并且使数据损失最小化通常包括昂贵的硬件和复杂的软件.但是,数据库镜像可

直接获取Access、SQL Server等数据库数据

access|server|数据|数据库 直接获取access.SQL Server等数据库数据Author: MixPST,Ph4nt0m Security Teamhttp://www.ph4nt0m.org 当使用SQL注入access的时候,经常会遇到密码为中文.猜不到关键字段名这样的问题.使用本技术就能够很快速的解决这样的问题.本技术最低要求有两条: 1.使用access数据库的系统存在SQL注入漏洞:mssql数据库也支持这个技术2.需要知道欲爆数据所在的表的表名以及这个表下的一个字

将ACCESS的数据库转化为SQL SERVER的数据库的几点体验

access|server|数据|数据库 最近忙于将ACCESS的数据库转化为SQL SERVER的数据库的学习,从中摸索出几条经验,与大家分享.1.ACCESS的数据库中的自动编号类型在转化时,sql server并没有将它设为自动编号型,我们需在SQL创建语句中加上identity,表示自动编号!2.转化时,跟日期有关的字段,SQL SERVER默认为smalldatetime型,我们最好将它变为datetime型,因为datetime型的范围比smalldatetime型大.我遇见这种情况

.net中webform和winform连接sql server 2000数据库的c#操作类

server|web|数据|数据库 一.这个为c#连接winform注意点:(1)调用时必须引用此类的命名空间(2)类中引用的命名空间using System;using System.Data;using System.Data.SqlClient;(3)调用示例: DataSet ds =new DataSet(); string sql="select * from [user]"; ds=DoDataBase.GetDataSet(sql); dataGrid1.DataSou