如何向sql server 2008添加新架构?

时间:2011-03-14 19:01:26

标签: sql-server sql-server-2008

如何向数据库添加新架构?我正在创建一个新表,并希望从属性列表中选择我自己的架构,但我不知道如何创建它。我正在使用SQL Server Management 2008。

6 个答案:

答案 0 :(得分:89)

使用CREATE SCHEMA语法,或者在SSMS中深入了解数据库 - > YourDatabaseName - >安全 - >架构。右键单击Schemas文件夹并选择“New Schema ...”

答案 1 :(得分:46)

这是一个很容易检查架构是否已经存在的技巧,然后在它自己的批处理中创建它,以避免在它不是批处理中的唯一命令时尝试创建架构的错误消息。

IF NOT EXISTS (SELECT schema_name 
    FROM information_schema.schemata 
    WHERE schema_name = 'newSchemaName' )
BEGIN
    EXEC sp_executesql N'CREATE SCHEMA NewSchemaName;';
END

答案 2 :(得分:10)

我使用这样的东西:

if schema_id('newSchema') is null
    exec('create schema newSchema');

优点是如果你在长sql脚本中有这个代码,你总是可以用其他代码执行它,并且它的简短。

答案 3 :(得分:8)

将架构添加到现有表格的最佳方式:右键单击特定表格 - >设计 - > 在管理工作室右侧看到“属性”窗口并选择架构并单击它,请参阅下拉列表并选择架构。更改后,架构保存它。然后会看到它会破坏你的架构。

答案 4 :(得分:7)

你可以试试这个:

use database
go

declare @temp as int
select @temp = count(1) from sys.schemas where name = 'newSchema'

if @temp = 0 
begin
    exec ('create SCHEMA temporal')
    print 'The schema newSchema was created in database'
end 
else 
print 'The schema newSchema already exists in database'
go

答案 5 :(得分:1)

在SQL Server 2016中,SSMS展开' DATABASNAME' >扩大'安全' >扩展' SCHEMA' ;右键点击' SCHEMAS'从弹出窗口左键单击“新方案”'在打开的窗口中添加名称并添加所有者,即dbo点击'确定'按钮