我开始学习SQL,我们的教授告诉我们用各自的索引和约束做6个表。
某些列的数据类型必须是大于1的正整数。如何指定?我已经创建了表但不小心把
CREATE TABLE Loan (
LoanID number NOT NULL CHECK (0>=1),
我很害怕我弄乱了整件事。
很抱歉,如果答案太明显了。我不太了解sql。
答案 0 :(得分:1)
将表列的约束设置为正整数的示例是
CREATE TABLE Loan
( LoanID INT UNSIGNED NOT NULL
)
UNSIGNED
会将其设为无符号,因此只接受正整数
如果您需要设置为接受大于某个值的内容,则可以使用CHECK
约束
CREATE TABLE Loan
(
LoanID int unsigned NOT NULL CHECK (LoanID > 1)
)
但根据MYSQL文档
CHECK子句被解析但被所有存储引擎忽略。
答案 1 :(得分:0)
你得到的大多数是正确的:
CREATE TABLE Loan
(
LoanID int NOT NULL CHECK (LoanID > 1)
)
答案 2 :(得分:0)
MySQL / Oracle / MS SQL Server
来源:http://www.w3schools.com/sql/sql_check.asp
CREATE TABLE Loan1 ( LoanID int NOT NULL, CONSTRAINT chk_Loan1 CHECK (LoanID>1) );
CREATE TABLE Loan2 ( LoanID int NOT NULL, CONSTRAINT chk_Loan2 CHECK (LoanID>1) );
...
Select * From Loan1;
Select * From Loan2;
...