我刚刚安装了SQL Server Express 2008,因为它具有智能感知功能.它起初工作,但它停止工作.正在寻找检查和稍后咨询Google的选项我发现如果连接到SQL Server 2005数据库,它看起来像Microsoft禁用智能感知.
这绝对正确吗?
有没有解决方案(一些注册表"切换")?
如果您想要添加该功能,请在Connect上投票.以下是团队反馈原因的反馈意见:
让我分享产品团队有关IntelliSense版本支持的信息.从智能感知项目开始,这是一个真正的设计,它是业务决策的一部分.IntelliSense的实现需要使用托管代码库在客户端进行完全保真的引擎解析器重构.支持多个服务器版本意味着并行设计和实现多个版本的解析器和相关的基础设施.这增加了开发,测试和支持的时间和成本.同时,核心模块是一个重要的产品基础,不仅可以实现IntelliSense功能,还可以使用升级顾问等其他产品来分析脚本; 从长远来看,它可能是任何需要对Transact-SQL语言进行语法和语义理解的功能.
在CTP5和CTP6中,IntelliSense有一个已知问题,即它没有正确检查服务器版本,因此CTP用户可以将任何版本的SQL Server与IntelliSense连接.虽然有些用户没有注意到它,但IntelliSense没有按照预期正常工作.其影响是,IntelliSense很有可能引导用户编写错误的Transact-SQL脚本,或者错误地指示脚本在这些版本中完全有效时会出现错误.
考虑到IntelliSense的首要目标是提高创作复杂查询或存储过程(或简称Transact-SQL脚本)的效率,这个问题被视为降低生产力的一个因素,这是新功能的巨大负面影响.
在RC0中,此已知问题已得到纠正,IntelliSense会检查服务器版本并在受支持的版本(SQL Server 2008)上提供其功能.
作为版本1,在Transact-SQL语言的子集上启用了IntelliSense.这是因为在托管代码中为整个语言范围实现lexer,parser,binder和script文档对象模型的工作范围很大.产品团队正在向前发展,重点是扩展语言支持范围.
我希望此信息提供背景信息,至少为什么只在SQL Server 2008上选择目标版本.
任何使用RTM版本的人都应该考虑这里提供的CU1(累积更新1)版本,因为解决了很多IntelliSense错误.
另外一个可以添加到列表中的免费工具是ApexSQL Complete.我在过去的几个月里一直在使用它,我觉得它比SSMS intellisense好一点,因为它提供了更多有用的工具提示.
一般来说,这里提到的任何工具都不会出错,特别是如果你准备支付高级工具的话.
Red-Gate的SQLPrompt可以很好地完成所有版本(2000,2005和2008),以及在VS甚至一些文本编辑器中运行.
SSMS中的intellisense确实只适用于SQL Server 2008.
最近,我们发布了一个用于SSMS的自动完成工具 - dbForge SQL Complete,它为SQL Server 2008,2005和2000提供了SQL自动完成和格式化功能.
我不;吨认为有办法解决(虽然我可能是错的),但是这可能会在你的追求真理帮助;-)
看起来intellisense在CTP期间为2008年之前的数据库建议了"不正确"的语法,并在RTM中删除了.