Sql-Server

T-SQL CREATE VIEW 返回“已經有一個名為 x 的對象”

  • February 15, 2017

SQL Server 2014。我有一個數據庫,在該數據庫上創建了一個名為“銷售分析”的視圖。我還有第二個數據庫,其架構與第一個數據庫相同,我想向其中添加視圖。因此,在 SSMS 中,我執行了“腳本視圖作為 CREATE 到新的查詢編輯器視窗”。我更改了腳本的第一行以反映第二個數據庫的名稱,並確保它也在 SSMS 數據庫下拉列表中被選中。但是,當我執行時,我得到:

“數據庫中已經有一個名為‘銷售分析’的對象。”

除了原始數據庫中的那個之外,沒有別的了。不涉及臨時表。VS 2015 已關閉。

即使我將原始數據庫離線,或者將腳本保存為 .SQL 文件並使用 SQLCMD 執行它,它也不起作用。

同一個伺服器。刷新視圖。可以成功創建在目標數據庫中附加“2”的視圖。只是當視圖名稱與原始數據庫相同時。use [database]已經在腳本的開頭-“腳本視圖”添加它。我將其更改為目標數據庫名稱。目標數據庫中不存在視圖 100%。我通過查詢進行了檢查sys.views

原來目標數據庫有一個同名的表(不是視圖)。我沒有創建它,我懷疑發生了什麼是我在將 app.config 連接字元串更改為指向第二個數據庫並執行該項目時創建的一個實體框架項目。

頑皮的實體框架。

在你的 create 前面添加一個 drop 語句。

請注意,這是危險的。

引用自:https://dba.stackexchange.com/questions/164256