【发布时间】:2014-07-23 18:27:51
【问题描述】:
我正在尝试实现一个图书馆管理数据库,我想根据借阅日期推断归还日期,loandays 将保存我们允许用户拥有这本书的天数。到目前为止,这是我的代码:
CREATE TABLE LOAN
(
COPY_ID int CONSTRAINT LOAN_COPY_FK
FOREIGN KEY(COPY_ID) REFERENCES COPY(COPY_ID) NOT NULL,
BORROWER_ID int CONSTRAINT LOAN_BORROWER_FK
FOREIGN KEY (BORROWER_ID) REFERENCES BORROWER (BORROWER_ID) NOT NULL,
LOAN_DATE DATE NOT NULL CONSTRAINT check_loan_date
CHECK (LOAN_DATE < RETURN_DATE),
LOAN_DAYS int NOT NULL,
RETURN_DATE AS (LOAN_DATE + LOAN_DAYS) CONSTRAINT LOAN_PK
PRIMARY KEY(COPY_ID, BORROWER_ID)
)
我有一个错误,因为LOAN_DAYS 是整数,我不知道如何使它成为一天而不是没有年月的日期。
【问题讨论】:
-
你得到什么错误?请添加更多信息。请参阅stackoverflow.com/questions/how-to-ask 了解如何编写问题。请在提问前在线搜索您的问题。
-
拜托,do not use all caps,当然你的 SQL 代码除外。它也使内容更难阅读。
-
请用清晰的句子解释您的问题,我们都会为您提供帮助
-
对不起,这是我第一次在这里问,我收到了流动错误 {Msg 206, Level 16, State 2, Line 1 Operand type conflict: date is incompatible with int}
-
为了让您的问题更清楚,您可以在问题中添加确切的错误消息。通过单击标签正下方的 edit 按钮来编辑问题 :-)
标签: sql sql-server database date