• CREATE SCHEMA


    CREATE SCHEMA

    创建一个架构,即命名空间,在这个空间中可以进一步定义包含表、视图和权限定义等对象。

    语法

    CREATE SCHEMA AUTHORIZATION owner
        [ < schema_element > [ ...n ] ]

    < schema_element > ::=
        { table_definition | view_definition | grant_statement }

    参数

    AUTHORIZATION owner

    指定架构对象所有者的 ID。此标识符必须是数据库中有效的安全帐户。

    table_definition

    指定在架构内创建表的 CREATE TABLE 语句。

    view_definition

    指定在架构内创建视图的 CREATE VIEW 语句。

    grant_statement

    指定授予用户或用户组权限的 GRANT 语句。 

    注释

    CREATE SCHEMA 提供了在单个语句中创建表、视图以及授予对象权限的方法。如果在创建任何对象或授予任何权限(这些是在 CREATE SCHEMA 语句中指定的)时发生错误,则不会创建任何对象。

    创建的对象不必按逻辑顺序出现,但引用其它视图的视图除外。例如,GRANT 语句可以在创建某个对象之前授予该对象的权限,CREATE VIEW 语句也可以出现在创建该视图所引用表的 CREATE TABLE 语句之前。同样,CREATE TABLE 语句中声明的外键可以指向后面指定的表。例外情况是,如果一个视图的选择语句引用另一个视图,则必须在指定引用视图之前指定被引用的视图。

    权限

    CREATE SCHEMA 权限默认授予所有用户,但是他们必须有权创建加入到架构中的对象。

     示例
    A. 在创建对象之前授权访问对象

    下例显示在创建对象之前授予权限。

    CREATE SCHEMA AUTHORIZATION ross 

    GRANT SELECT on v1 TO public

    CREATE VIEW v1(c1) AS SELECT c1 from t1

    CREATE TABLE t1(c1 int)

    B. 创建相互依赖的 FOREIGN KEY 约束

    下例创建相互依赖的 FOREIGN KEY 约束。用其它方法完成由此 CREATE SCHEMA 示例实现的任务时,需要执行多个步骤。

    CREATE SCHEMA AUTHORIZATION ross

    CREATE TABLE t1 (c1 INT PRIMARY KEY, c2 INT REFERENCES t2(c1))

    CREATE TABLE t2 (c1 INT PRIMARY KEY, c2 INT REFERENCES t1(c1))

      

    自己例子

    create schema y1 authorization dbo

           create  table  aa

          (sn  int ,

           account  char (10),

           BookNO  char(30),

           BookName  char(200),

           Quantity int,

           Inprice money,

           SalesPrice money

           )

  • 相关阅读:
    一步一步本地化部署mapbox-gl
    快速排序
    合并排序
    冒泡排序
    选择排序
    插入排序
    mapbox-gl象形文字字体glyph生成
    前端html
    Mysql练习
    Mysql语句
  • 原文地址:https://www.cnblogs.com/qiushuixizhao/p/4632900.html
Copyright © 2020-2023  润新知