- Learning PostgreSQL 11
- Salahaldin Juba Andrey Volkov
- 338字
- 2021-07-02 13:11:50
Tables
Tables are a core database object. The CREATE TABLE statement is very rich. It can be used for several purposes, such as cloning a table, which is handy for database refactoring to create an uninstall script to roll back changes. Also, it can be used to materialize the result of the SELECT statement to boost performance, or for temporarily storing the intermediate data and results.
The PostgreSQL tables are used internally to model views and sequences. In PostgreSQL, tables can be of different types:
- Ordinary table: The table lifespan starts with table creation and ends with table dropping.
- Temporary table: The table lifespan is the user session. This is often used with procedural languages to model business logic.
- Unlogged table: Unlogged tables are faster than ordinary tables, because data isn't written into the WAL files. Unlogged tables aren't crash-safe. Also, since streaming replication is based on shipping the WAL files, unlogged tables can't be replicated to the standby node.
- Child table: A child table is an ordinary table that inherits one or more tables. The inheritance is often used with constraint exclusion to physically partition the data on the hard disk and to improve performance by retrieving a subset of data that has a certain value.
The CREATE TABLE syntax is quite long; it's full syntax can be found at http://www.postgresql.org/docs/current/static/sql-createtable.html. The CREATE TABLE SQL command normally requires the following input:
- Table name of the created table.
- The table type.
- The table's storage parameters. These parameters are used to control the table's storage allocation and several other administrative tasks.
- The table columns, including the data type, default values, and constraint.
- The cloned table name and the options to clone the table.
To create a table, you can write a query as simple as the following:
CREATE TEMP TABLE temp AS SELECT 1 AS one;
The preceding SQL command creates a temporary table with one column and one tuple. The column name and type are 1 and integer, respectively.
- iOS面試一戰到底
- 大學計算機應用基礎實踐教程
- JavaScript語言精髓與編程實踐(第3版)
- Vue.js入門與商城開發實戰
- 認識編程:以Python語言講透編程的本質
- PHP網絡編程學習筆記
- C/C++常用算法手冊(第3版)
- Web程序設計(第二版)
- SQL Server 2012數據庫管理與開發項目教程
- JavaScript 程序設計案例教程
- HTML+CSS+JavaScript網頁設計從入門到精通 (清華社"視頻大講堂"大系·網絡開發視頻大講堂)
- 零代碼實戰:企業級應用搭建與案例詳解
- Learning Android Application Testing
- Building Clouds with Windows Azure Pack
- Python人工智能項目實戰