我开始学习SQL,我们的教授告诉我们要做6个表,分别列出各自的索引和约束条件。超级初学者 - Oracle SQL
某些列的数据类型必须是大于1的正整数。如何指定此值?我已经创建了表,但不小心把
CREATE TABLE Loan (
LoanID number NOT NULL CHECK (0>=1),
我很害怕我搞砸了整个事情。
对不起,如果答案太明显。我不太了解sql。
我开始学习SQL,我们的教授告诉我们要做6个表,分别列出各自的索引和约束条件。超级初学者 - Oracle SQL
某些列的数据类型必须是大于1的正整数。如何指定此值?我已经创建了表,但不小心把
CREATE TABLE Loan (
LoanID number NOT NULL CHECK (0>=1),
我很害怕我搞砸了整个事情。
对不起,如果答案太明显。我不太了解sql。
你得到它基本上是正确的:
CREATE TABLE Loan
(
LoanID int NOT NULL CHECK (LoanID > 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”的部分?听起来像一个约束 –
@ZoffDino我对它应该是> 1我没有检查..感谢 – Sachu
的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;
...
不要害怕。关于软件的好处是我们拥有UNDO和REDO的权力。尝试某些东西没有任何处罚。 – APC