| Home > SQL
Server Error Messages > Msg 166 - 'CREATE VIEW' does not allow
specifying the database name as a prefix to the object name. |
| SQL
Server Error Messages - Msg 166 - 'CREATE VIEW' does not allow specifying the
database name as a prefix to the object name. |
|
|
Error Message:
Server: Msg 166, Level 15, State 1, Line 2
'CREATE VIEW' does not allow specifying the database name
as a prefix to the object name.
Causes:
This error occurs when creating a view on another database, which is not allowed
because a view can only be created in the current database. Also, when
creating a view in the current database, don’t include the database name in the
name of the view as the error will also be encountered.
|
To illustrate, the following script will generate the error:
CREATE VIEW [Northwind].[dbo].[CustomerCountries]
AS
SELECT DISTINCT [Country]
FROM [dbo].[Customers]
GO
Server: Msg 166, Level 15, State 1, Line 2
'CREATE VIEW' does not allow specifying the database name as a prefix to the object name.
Solution/Workaround:
To avoid this error, remove the database name when creating a view:
CREATE VIEW [dbo].[CustomerCountries]
AS
SELECT DISTINCT [Country]
FROM [dbo].[Customers]
GO
If you need to create a view on another database, change your database first
then create the view without the database name:
USE Northwind
GO
CREATE VIEW [dbo].[CustomerCountries]
AS
SELECT DISTINCT [Country]
FROM [dbo].[Customers]
GO
|
|
Related Topics:
|
|
|