如何向数据库添加新架构?我正在创建一个新表,并希望从属性列表中选择我自己的架构,但我不知道如何创建它。我正在使用SQL Server Management 2008。
答案 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点击'确定'按钮