我正在尝试为新创建的数据库创建存储过程。然而,SSMS智能感知不能识别超过一半的已创建的表。
例如,在表的左边这一列,我有一个表dbo。当我在新的查询窗口中输入“dbo.”时,没有列出那个表,实际上37个表中只列出了17个。
我看不出智能感知和非智能感知列出的表格有什么不同。如果我手动输入dbo。房间,它是下划线,有一个错误
无效对象名称“dbo.Room”…
我是不是在摆桌子的时候漏掉了什么?
更新:我已经尝试刷新表列表(几次)
我正在尝试为新创建的数据库创建存储过程。然而,SSMS智能感知不能识别超过一半的已创建的表。
例如,在表的左边这一列,我有一个表dbo。当我在新的查询窗口中输入“dbo.”时,没有列出那个表,实际上37个表中只列出了17个。
我看不出智能感知和非智能感知列出的表格有什么不同。如果我手动输入dbo。房间,它是下划线,有一个错误
无效对象名称“dbo.Room”…
我是不是在摆桌子的时候漏掉了什么?
更新:我已经尝试刷新表列表(几次)
当前回答
一旦你创建了一个新的SQL Server对象,你新创建的对象不会在智能本地缓存中得到更新,因此,它会在该对象下面显示红线。所以你只需要刷新SSMS智能本地缓存,一旦你刷新它,智能将自动在缓存中添加新创建的对象,红线将消失。试试这个
编辑->智能感知->刷新本地缓存或按Ctrl + Shift + R
其他回答
对我来说,我从
[Database_LS].[schema].[TableView]
to
[Database_LS].[Database].[schema].[TableView]
我遇到了一个问题: ODBC和ODBC中的SQL-Server-Authentication 而且 Firedac-Connection
解决方案: 我必须将参数MetaDefSchema设置为sqlserver用户名: FDConnection1.Params。AddPair (MetaDefSchema, self.FDConnection1.Params.UserName);
wikidoc说: MetaDefSchema=默认模式名。设计时间代码>>排除<< !! !如果它等于MetaDefSchema,则从对象SQL-Server-Authenticatoinname获取模式名。
无需设置,自动编码器创建: Dbname.username.tablename ->无效的对象名称
将MetaDefSchema设置为sqlserver-username: dbname。Tablename ->工作!
另见embarcadero-doc: http://docwiki.embarcadero.com/RADStudio/Rio/en/Connect_to_Microsoft_SQL_Server_ (FireDAC)
希望它能帮助别人。
问候,鲁茨
同样的问题,当我用这个语法问题解决。
语法:
Use [YourDatabaseName]
Your Query Here
Try:
Edit -> IntelliSense ->刷新本地缓存
这应该会刷新智能感知缓存的数据,以提供输入前支持和执行前错误检测。
注意:您的光标必须位于查询编辑器中,才能显示智能感知菜单。
在我的例子中,我试图修改数据库中不存在的存储过程,在创建它并刷新本地缓存之后,它工作了