简体   繁体   English

如何在ALTER TABLE中添加CHECK约束?

[英]How to ALTER TABLE to add CHECK constraint?

I want to ALTER my already created ZIPCODE table so that the sales_tax_applied field can never have a negative value. 我想更改已经创建的ZIPCODE表,以使sales_tax_applied字段永远不会具有负值。 Here is the code for my already created table: 这是我已经创建的表的代码:

CREATE TABLE ZIPCODE 
( 
  city VARCHAR(50) NOT NULL, 
  state CHAR(2) NOT NULL, 
  zipcode VARCHAR(20) NOT NULL, 
  sales_tax_applied DECIMAL(10,4) NOT NULL, 
  PRIMARY KEY (zipcode) 
);

What is the code for me to be able to do this? 我能够执行此操作的代码是什么? NOTE: all fields must be NOT NULL. 注意:所有字段都不能为空。

Thank you 谢谢

You would do: 您可以这样做:

alter table zipcode add constraint chk_zipcode_sales_tax_applied
    check (sales_tax_applied >= 0);

You can also add this into the create table statement in multiple ways, such as: 您还可以通过多种方式将其添加到create table语句中,例如:

CREATE TABLE ZIPCODE ( 
  city VARCHAR(50) NOT NULL, 
  state CHAR(2) NOT NULL, 
  zipcode VARCHAR(20) NOT NULL, 
  sales_tax_applied DECIMAL(10,4) NOT NULL, 
  PRIMARY KEY (zipcode),
  constraint chk_zipcode_sales_tax_applied check (sales_tax_applied >= 0)
);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM