<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # CREATE FOREIGN TABLE ## Name CREATE FOREIGN TABLE?--?定義一個新外部表 ## Synopsis ``` CREATE FOREIGN TABLE [ IF NOT EXISTS ] _table_name_ ( [ _column_name_ _data_type_ [ OPTIONS ( _option_ '_value_' [, ... ] ) ] [ COLLATE _collation_ ] [ _column_constraint_ [ ... ] ] [, ... ] ] ) SERVER _server_name_ [ OPTIONS ( _option_ '_value_' [, ... ] ) ] 這里`_column_constraint_` 可以是: [ CONSTRAINT _constraint_name_ ] { NOT NULL | NULL | DEFAULT _default_expr_ } ``` ## 描述 `CREATE FOREIGN TABLE`在當前數據庫中創建一個外部表,該表將由發出此命令的用戶所有。 如果給出了模式名 (for example, `CREATE FOREIGN TABLE myschema.mytable ...`) ,那么表是在指定模式中創建的。否則在當前模式中創建外部表。 外部表的名字必須與同一個模式中的其它外部表,表,序列,索引或試圖的名字不同 `CREATE FOREIGN TABLE`還自動創建一個數據類型,該數據類型代表對應該外部表一行的復合類型。 因此,外部表不能和同模式中的現有數據類型同名。 為了創建一個外部表,除了對外部表所有字段類型有 `USAGE`權限外, 還必須有外部表服務器的`USAGE`權限。 ## 參數 `IF NOT EXISTS` 如果已經存在相同名稱的對象,在這種情況下,不會拋出錯誤,只會產生一個通知。 請注意這并不保證將要創建的對象與現有對象是否一致。 `_table_name_` 要創建的表的名字(可以用模式修飾)。 `_column_name_` 新表中要創建的字段名。 `_data_type_` 該字段的數據類型. 它可以包含數組說明符。有關 PostgreSQL 支持的數據類型的更多信息, 請參考[Chapter 8](#calibre_link-5)。 `NOT NULL` 該字段不允許包含null值。 `NULL` 該字段允許包含null值。 這是缺省。 這個子句的存在只是為和那些非標準 SQL 數據庫兼容。 我們不建議在新應用中使用它。 `DEFAULT` `_default_expr_` `DEFAULT` 子句給它所出現的字段設定一個缺省數值。該數值可以是任何不含變量的表達式(不允許使用子查詢和對本表中的其它字段的交叉引用)。缺省表達式的數據類型必須和字段類型匹配。 缺省表達式將被用于任何未指定該字段數值的插入操作。 如果字段上沒有缺省值,那么缺省是 NULL。 `_server_name_` 外部表使用的已存在的外部服務器名稱。更多細節,參考[CREATE SERVER](#calibre_link-6)。 `OPTIONS (` `_option_` '`_value_`' [, ...] ) 選項與新外部表或外部表中的字段有關。允許的選項名稱和值,是由每一個外部數據封裝器中來說是特別指定的。 也是通過外部數據封裝器的驗證函數來驗證。重復的選項名稱是不被允許的(盡管表選項和表字段選項可以有相同的名字)。 ## 例子 創建外部表 `films`, 該表通過服務器 `film_server`訪問: ``` CREATE FOREIGN TABLE films ( code char(5) NOT NULL, title varchar(40) NOT NULL, did integer NOT NULL, date_prod date, kind varchar(10), len interval hour to minute ) SERVER film_server; ``` ## 兼容性 `CREATE FOREIGN TABLE`命令最大程度上符合了SQL標準; 然而,就像使用[`CREATE TABLE`](#calibre_link-7),`NULL`約束和 零字段外部表以及設定默認值的功能是PostgreSQL對SQL標準的擴展。 ## See Also [ALTER FOREIGN TABLE](#calibre_link-8), [DROP FOREIGN TABLE](#calibre_link-9), [CREATE TABLE](#calibre_link-7), [CREATE SERVER](#calibre_link-6)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看