sql-server - 可以创建表格但不显示在对象资源管理器中,无法选择或删除表格?
问题描述
使用 SQL Server 2016。有一个本地托管的数据库,该数据库使用 Windows 登录 sa,这是我用来登录的。
昨天我跑了
CREATE TABLE [Otis].[AnalyzerGroups]
(
[id] [int] IDENTITY,
[Name] [varchar](50) NULL
);
并成功完成命令。今天我尝试从这个表中选择但得到一个错误:
消息 208,级别 16,状态 1,第 1 行
无效的对象名称“Otis.AnalyzerGroups”
所以我以为我记错了并尝试再次运行 create 语句,但随后出现错误 -
消息 15530,级别 16,状态 1,第 1 行
名称为“AnalyzerGroups”的对象已存在。
该语句已终止。
所以然后我尝试DROP TABLE [Otis].[AnalyzerGroups];
并得到了
消息 3701,级别 11,状态 5,第 1 行
无法删除表“Otis.AnalyzerGroups”,因为它不存在或您没有权限。
我尝试制作一个新的测试表和同样的东西。我第一次运行创建语句命令成功完成,但是我无法从表中选择/插入/删除,我也无法在对象资源管理器中看到它。
我认为这一定是一些权限问题,但我不知道是什么属性阻止我查看这些表 - 这不像我在这些表上设置安全性,我可以看到我们数据库中的所有其他表。有什么想法吗?
解决方案
SQL Server 数据库中有一个触发器,每当在任何架构下创建新表时都会触发该触发器,然后将其传输到该dbo
架构。所以我的表确实存在,但由于这个触发器,它们在我期望的模式下。为什么会存在这个触发器?得到我。但它已经投入生产并且已经有十多年了,所以有一些原因/它绝对不会改变。感谢大家的帮助。
推荐阅读
- nuxt.js - 如何在 Nuxt.js 上使用自定义域设置 Auth0
- excel - Application.GetSaveAsFilename(InitialFileName:=Range("O26") 有时会出现一个空白对话框
- python - Python STAR & HASH ODD DIAMOND 递归打印
- haskell - 获取异构列表的最后一个元素
- openshift - 自动扩展持久存储
- excel - 将单元格中的值分隔到数组中
- python - 通过ssh访问时如何防止google colab断开连接?
- r - 用前几个字符替换字符串
- c# - C# / 将组合键 (CTRL+S) 发送到另一个窗口
- java - 在android的后台线程中运行代码