SQLServer create schema

schema很重要,每个数据都得建schema,有时候我们不指定schema那么数据库也会默认当前登录用户的名为schema.为什么建schema呢,
你可能把他当成一个命名空间或一个架构来看,CREATE SCHEMA 提供了在SQL语句中创建表、视图以及授予对象权限的方法,区别重名,
比较有的人就是怕索引名同名,所以创建schema,跟他的表的索引区别开来,同时可以让索引,表,视图不在同一个命名空间,让没有权限的用户不能操作。
为什么要这个分开命名空间呢,好处主要是对表的查询速度会有所提高,如果把索引跟表同在一个命名空间,那数据库表空间变小,因为索引是占空间的。
这样就会影响到查询表速度

 

 

drop schema abp
go

/*==============================================================*/
/* User: abp                                                    */
/*==============================================================*/
create schema abp
go

if exists (select 1
            from  sysobjects
           where  id = object_id('abp.test')
            and   type = 'U')
   drop table abp.test
GO

/*==============================================================*/
/* Table: 测试表                                  */
/*==============================================================*/
create table abp.test (
   aa              varchar(50)          not null ,
   bb            varchar(100)         collate Chinese_PRC_CI_AS null,
   cc             int                  null
)
on "PRIMARY"
GO

--默认情况下为dbo,所以会提示对表没有权限
--DROP TABLE test
DROP TABLE abp.test

 

 

源:http://www.cnblogs.com/zhouchaoyi/archive/2012/04/09/2439106.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值