Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2008 防止sql server Compact作为匿名合并请求发布的订阅服务器_Sql Server 2008_Sql Server 2008 R2_Sql Server Ce_Replication_Merge Replication - Fatal编程技术网

Sql server 2008 防止sql server Compact作为匿名合并请求发布的订阅服务器

Sql server 2008 防止sql server Compact作为匿名合并请求发布的订阅服务器,sql-server-2008,sql-server-2008-r2,sql-server-ce,replication,merge-replication,Sql Server 2008,Sql Server 2008 R2,Sql Server Ce,Replication,Merge Replication,有没有一种方法可以指定为我的发布的属性,也就是说它不需要处理sql compact订阅 Sql server 2008 R2作为发布者,最初创建发布时,我将兼容性设置为2005及以上。我无意中在一篇复制的文章中使用了一个时间列,后来意识到,对于SQLCE来说,时间列应该是nvarchar,这已经太晚了 首先,时间数据类型是从2008年引入的,所以我将出版物兼容性更改为2008年。以及创建新快照、重新初始化订阅等。 目前我所有的子客户都是2008 express。我永远不需要处理2005年的订户

有没有一种方法可以指定为我的发布的属性,也就是说它不需要处理sql compact订阅

Sql server 2008 R2作为发布者,最初创建发布时,我将兼容性设置为2005及以上。我无意中在一篇复制的文章中使用了一个时间列,后来意识到,对于SQLCE来说,时间列应该是nvarchar,这已经太晚了

首先,时间数据类型是从2008年引入的,所以我将出版物兼容性更改为2008年。以及创建新快照、重新初始化订阅等。 目前我所有的子客户都是2008 express。我永远不需要处理2005年的订户

此外,我永远不需要处理2008年紧凑型用户。因为compact不支持时间,所以我的理论是,如果我能以某种方式指定发布不需要允许compact订阅服务器,并重新生成快照和重做订阅,那么该列最终将作为“时间”而不是nvarchar

那么,这有可能吗

编辑:

我忽略了一个事实,即没有“SQLServer2008Compact”这样的东西。我想我现在的问题是,在我创建了一个“订户类型”为2005及以上的发布之后,以及在至少存在一个订户(仅2008 express)之后,我将publication属性更改为2008及以上,为什么任何新的子订阅服务器都没有“时间”数据类型?有人能保证,如果我完全删除出版物并从头开始重新创建它,订阅将获得“时间”列的罚款吗?

新建出版物向导”有一个“订阅者类型”对话框,在此对话框中,仅选择SQL Server 2008