最近在开发项目时遇到了这样一个问题,开发时用的数据库版本是SQL2005的,但是最终客户中某些用的确是SQL2000的,这样就麻烦了:SQL2000的不可能兼容SQL2005的。研究了一下,决定要数据库的“导入/导出”数据来实现。下面是操作步骤:
一、从SQL2005编写数据脚本
步骤1. 配置数据库兼容性,如下图所示:

选择您要导出的数据库,鼠标“右键”选择—“属性”—“选项”:修改“兼容级别”为“SQL Server 2000 (80)”;
步骤2.在SQL2005选择编写脚本,如下图:

选择您要导出的数据库,鼠标“右键”—“任务”—“生成脚本”;
步骤3:在SQL2005选择为所选数据库的所有对象编写脚,如下图:

注意:这里要选择“为所选数据库中的所有对象编写脚本”,否则后面在SQL2000导入数据时会出现下面的错误,将导致导入数据失败!!!

步骤4.在SQL2005选择数据库版本为2000的编写脚本,如下图所示:

这里的“为服务器版本编写脚本”要选择:SQL Server 2000;
步骤5.选择SQL2005数据库脚本生成方式,如下图所示:

这里是选择脚本生成的方式,我这里就用最后一种方式了。当出现下面的图示中的信息,则说明脚本生成成功。

二、从SQL2000导入数据,用刚刚生成的脚本
首先我们要在SQL2000中检查一下刚刚创建的脚本,可能会出现下面的错误信息:

不用惊慌:这是因为在SQL2000中nvarchar没有“max”长度,这里只需把 "nvarchar(MAX)" 改为"ntext" 即可。这时再次检查一遍,如果没有错误就运行一下脚本,会创建一个空的同名数据库。继续下面的操作:
步骤1. 在SQL2000中选择导入数据,如下图所示:

选择您刚刚建的空数据库,鼠标“右键”—“所有任务”—“导入数据”;
步骤2. 选择数据源(即导出数据的数据库服务器(SQL2005数据库服务器)),如下图:

填写用户名,密码,并选择您要导出的数据库。点击“下一步”;
步骤3. 选择目标数据库(即要导入数据的数据库服务器(SQL2000数据库服务器)),如下图:

填写用户名,密码,选择数据库,点击“下一步”;
步骤4.选择导入数据方式,SQL2000提供了3中方式,如下图所示:

这里我选择了第一种方式:“从源数据库复制表和视图”;
步骤5.选择要导入的表,您可以根据需要导入您需要的表,不过要注意两边一定要是相同的表,如下图:

步骤6. 选择导入数据的时间,我想您也会和我选择的一样吧,呵呵,如下图:

成功设置windows server 2008R2 的SMTP服务
服务器安装完成后,其它工作都很顺利的完成。唯独邮件发送服务一直无法解决,出现的症状是,客户端提交的邮件都保存在等待队列里(\mailroot\Queue 文件夹)一封都没有发出去。因为前阵子事情太多就没有去研究原因,把STMP服务改成别人的邮件服务器暂时使用。
今天,手头的事情暂时都做完了,闲下来研究了一下windows server 2008R2 的SMTP服务,终于功夫不负有心了。找到了无法发送邮件的原因。邮件无法发送的最终原因是,现在的邮件服务器都会方向查询一下发送者的服务器提交的域名和MX记录是否一致,而我这台服务器还没有MX记录指定到这个服务器的IP地址,所以发送邮件都被拒绝,而出现在等待目录中。
知道原因后,我就去指定了一个MX记录到这台服务器的IP。然后在STMP设置里绑定这个IP地址,如下图:

然后在"传递"->"高级" 中设置MX的域名,如下图:

这样设置后就可以对外发送邮件了。
如果要让SMTP服务自动运行,那么还需要在“服务”里把“简单邮件传输协议(SMTP)”设置成自动运行。

经过设置后,SMTP服务正常运行。
讲师:don 浏览数:25
讲师:don 浏览数:85
讲师:don 浏览数:101
讲师:don 浏览数:151
讲师:don 浏览数:83
讲师:don 浏览数:182
讲师:don 浏览数:72
讲师:don 浏览数:131