首页 > 数据库 >无涯教程-PostgreSQL - Alter(修改表)

无涯教程-PostgreSQL - Alter(修改表)

时间:2023-12-25 12:31:51浏览次数:42  
标签:PostgreSQL name DROP 无涯 Alter 语法 table TABLE ALTER

PostgreSQL ALTER TABLE 命令用于在现有表中添加,删除或修改列,您还可以使用ALTER TABLE命令在现有表上添加和删除各种约束。

Alter Table - 语法

ALTER TABLE 在现有表中添加新列的基本语法如下:

ALTER TABLE table_name ADD column_name datatype;

现有表中将ALTER TABLE更改为 DROP COLUMN 的基本语法如下-

ALTER TABLE table_name DROP COLUMN column_name;

更改表中列的 DATA TYPE 的ALTER TABLE的基本语法如下-

ALTER TABLE table_name ALTER COLUMN column_name TYPE datatype;

为表中的列添加 NOT NULL 约束的ALTER TABLE的基本语法如下-

ALTER TABLE table_name MODIFY column_name datatype NOT NULL;

将ALTER TABLE 添加到表的唯一约束的基本语法如下-

ALTER TABLE table_name
ADD CONSTRAINT MyUniqueConstraint UNIQUE(column1, column2...);

将ALTER TABLE ADD CHECK CONSTRAINT 添加到表的基本语法如下-

ALTER TABLE table_name
ADD CONSTRAINT MyUniqueConstraint CHECK (CONDITION);

将ALTER TABLE限制为 ADD PRIMARY KEY 约束到表的基本语法如下-

ALTER TABLE table_name
ADD CONSTRAINT MyPrimaryKey PRIMARY KEY (column1, column2...);

从表到 DROP CONSTRAINT 的ALTER TABLE的基本语法如下-

ALTER TABLE table_name
DROP CONSTRAINT MyUniqueConstraint;

如果您使用的是MySQL,则代码如下-

ALTER TABLE table_name
DROP INDEX MyUniqueConstraint;

从表到 DROP PRIMARY KEY 约束的ALTER TABLE的基本语法如下-

ALTER TABLE table_name
DROP CONSTRAINT MyPrimaryKey;

如果您使用的是MySQL,则代码如下-

ALTER TABLE table_name
DROP PRIMARY KEY;

Alter Table - 示例

考虑无涯教程的COMPANY 表具有以下记录-

 id | name  | age | address   | salary
----+-------+-----+-----------+--------
  1 | Paul  |  32 | California|  20000
  2 | Learnfk |  25 | Texas     |  15000
  3 | Teddy |  23 | Norway    |  20000
  4 | Mark  |  25 | Rich-Mond |  65000
  5 | David |  27 | Texas     |  85000
  6 | Kim   |  22 | South-Hall|  45000
  7 | James |  24 | Houston   |  10000

以下是在现有表中添加新列的示例-

testdb=# ALTER TABLE COMPANY ADD GENDER char(1);

现在,COMPANY表已更改,以下将是SELECT语句的输出-

 id | name  | age | address     | salary | gender
----+-------+-----+-------------+--------+--------
  1 | Paul  |  32 | California  |  20000 |
  2 | Learnfk |  25 | Texas       |  15000 |
  3 | Teddy |  23 | Norway      |  20000 |
  4 | Mark  |  25 | Rich-Mond   |  65000 |
  5 | David |  27 | Texas       |  85000 |
  6 | Kim   |  22 | South-Hall  |  45000 |
  7 | James |  24 | Houston     |  10000 |
(7 rows)

以下是从现有表中删除性别列的示例-

testdb=# ALTER TABLE COMPANY DROP GENDER;

现在,COMPANY表已更改,以下将是SELECT语句的输出-

 id | name  | age | address   | salary
----+-------+-----+-----------+--------
  1 | Paul  |  32 | California|  20000
  2 | Learnfk |  25 | Texas     |  15000
  3 | Teddy |  23 | Norway    |  20000
  4 | Mark  |  25 | Rich-Mond |  65000
  5 | David |  27 | Texas     |  85000
  6 | Kim   |  22 | South-Hall|  45000
  7 | James |  24 | Houston   |  10000

参考链接

https://www.learnfk.com/postgresql/postgresql-alter-command.html

标签:PostgreSQL,name,DROP,无涯,Alter,语法,table,TABLE,ALTER
From: https://blog.51cto.com/u_14033984/8966165

相关文章

  • 无涯教程-PostgreSQL - Triggers(触发器)
    PostgreSQL触发器是数据库回调函数,当发生指定的数据库事件时,它们会自动执行。Triggers-语法创建trigger的基本语法如下-CREATETRIGGERtrigger_name[BEFORE|AFTER|INSTEADOF]event_nameONtable_name[--Triggerlogicgoeshere....];在这里,event_name可以......
  • 无涯教程-PostgreSQL - Unions(联合语句)
    PostgreSQLUNION用于合并两个或多个SELECT语句的输出,而不返回任何重复的行。要使用UNION,每个SELECT必须具有相同数量的选定列,相同数量的列表达式,相同数据类型,并且具有相同的顺序,但它们的长度不必相同。Unions-语法UNION的基本语法如下:SELECTcolumn1[,column2]FR......
  • 无涯教程-PostgreSQL - Joins(连接语句)
    PostgreSQLJoins子句用于合并数据库中两个或多个表中的记录,JOIN是一种通过使用每个表的公用值来组合两个表中的字段的方法。PostgreSQL中的联接类型是-CROSSJOININNERJOINLEFTOUTERJOINRIGHTOUTERJOINFULLOUTERJOIN在继续之前,让无涯教程考虑两个表,COMPANY和DE......
  • 无涯教程-PostgreSQL - 约束条件
    约束是对表的数据列强制执行的规则,这些用于防止将无效数据输入数据库,这样可以确保数据库中数据的准确性和可靠性。以下是PostgreSQL中可用的常用约束。NOTNULLConstraint   -确保值不能为空UNIQUEConstraint     - 确保值唯一PRIMARYKey    ......
  • 无涯教程-PostgreSQL - Distinct语句
    PostgreSQLDISTINCT关键字与SELECT语句结合使用,可消除所有重复记录并仅提取唯一记录。Distinct-语法消除重复记录的DISTINCT关键字的基本语法如下-SELECTDISTINCTcolumn1,column2,.....columnNFROMtable_nameWHERE[condition]Distinct-示例考虑表 COMPANY ......
  • 无涯教程-PostgreSQL - With语句
    在PostgreSQL中,WITH查询提供了一种编写辅助语句以用于较大查询的方法,它有助于将复杂的大型查询分解为更易于阅读的更简单形式。WITH查询是CTE查询,在多次执行子查询时特别有用,代替临时表同样有用,它只计算一次聚合,并允许无涯教程在查询中按其名称引用它。在查询中使用它之前,必须......
  • 无涯教程-PostgreSQL - Order By语句
    PostgreSQLORDERBY子句用于根据一个或多个列以升序或降序对数据进行排序。OrderBy-语法ORDERBY子句的基本语法如下-SELECTcolumn-listFROMtable_name[WHEREcondition][ORDERBYcolumn1,column2,..columnN][ASC|DESC];您可以在ORDERBY子句中使用多个列......
  • 无涯教程-PostgreSQL - Limit语句
    PostgreSQLLIMIT子句用于限制SELECT语句返回的数量。LimitClause-语法带LIMIT子句的SELECT语句的基本语法如下-SELECTcolumn1,column2,columnNFROMtable_nameLIMIT[noofrows]以下是LIMIT子句与OFFSET子句一起使用时的语法-SELECTcolumn1,column2,columnN......
  • 无涯教程-PostgreSQL - 更新数据(Update)
    PostgreSQLUPDATE查询用于修改表中的现有记录,您可以将WHERE子句与UPDATE查询一起使用来更新选定的行,否则,将更新所有行。使用WHERE子句的UPDATE查询的基本语法如下-UPDATEtable_nameSETcolumn1=value1,column2=value2....,columnN=valueNWHERE[condition];您可以使用......
  • 无涯教程-PostgreSQL - AND&OR语句
    PostgreSQL的AND和OR运算符用于组合多个条件以缩小PostgreSQL语句中的选定数据。AND运算符AND运算符允许PostgreSQL语句的WHERE子句中存在多个条件,使用AND运算符时,当所有条件都为真时才通过。如,仅当condition1和condition2均为true时,[condition1]AND[condition2]才为tr......