本人在使用sql server 2005生成数据库创建脚本时(创建索引脚本要选中),出现“目标服务器版本不支持该对象或不支持该对象的一个属性。 (Microsoft.SqlServer.Smo)”,经过试验发现是在生成那些含有Xml索引的表时发生该错误。
经网上查询,说是需要打sql server 2005 sp2,二话没说马上下载打上,可是故障依然如旧,随后又找到sp3打上,还把Sql server 2005 manage object collection下载并安装,问题依然,郁闷!
经过一阵折腾,发现解决办法如下:
- 先将sp打上的(我最终打的是sp3,是否sp2就够望网友试试)
- 将原来表中的xml索引全部删除
- 用Sql server 2005 manage studio 生成该数据库的脚本
- 然后用该脚本重新创建一个数据库
- 将相应的xml索引重新加上
- 然后再生成脚本,一切就Ok了
至于为什么要重建一个新的数据库,可能是以前创建的库中的一些对象属性表示不对(猜的)
用Sql server 2008就不会有这个问题