| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 725 人关注过本帖, 1 人收藏
标题:SQL Server 问题?欢迎来解答,
只看楼主 加入收藏
LOVE1314520
Rank: 2
等 级:论坛游民
帖 子:16
专家分:16
注 册:2011-5-25
结帖率:0
收藏(1)
已结贴  问题点数:10 回复次数:7 
SQL Server 问题?欢迎来解答,
/*图书借阅表【Borrow】*/
/*
    RID varchar(50) 读者编号,复合主键,读者信息表的外键,必填
    BID varchar(50) 图书编号,复合主键,图书信息表的外键,必填
    LendDate datetime 借阅日期,复合主键,默认为当前日期,必填
    WillDate datetime 应还日期,必须大于等于借阅日期,默认为借阅日期+1个月
    ReturnDate datetime 实际归还日期,默认为空
*/
if exists(select name from sysobjects where name='Borrow')
  drop table Borrow
go
create table Borrow
(
    RID          varchar(50) not null ,    --读者编号,复合主键,读者信息表的外键,必填
    BID          varchar(50) not null ,    --图书编号,复合主键,图书信息表的外键,必填
    LendDate     datetime    not null ,    --借阅日期,复合主键,默认为当前日期,必填
    WillDate     datetime    check(WillDate>=LendDate) default(dateadd(mm,1,LendDate))        ,    --应还日期,必须大于等于借阅日期,默认为借阅日期+1个月
    ReturnDate   datetime                  --实际归还日期,默认为空
)
go


红色的地方有错误!但我不理解啊!
搜索更多相关主题的帖子: where null 读者 
2011-05-25 10:27
LOVE1314520
Rank: 2
等 级:论坛游民
帖 子:16
专家分:16
注 册:2011-5-25
收藏
得分:0 
还以为回得快啊,等了30分钟。没人回答!
2011-05-25 11:00
go2011
Rank: 6Rank: 6
等 级:侠之大者
帖 子:56
专家分:445
注 册:2011-4-21
收藏
得分:3 
CHECK 约束通过不基于其他列中的数据的逻辑表达式确定有效值,也就地说CHECK中的有效表达式包括常量、常量表达式和变量(在某些上下文中),不允许使用列名,在本例中就是表达式中不能使用 “LendDate”。同样,在DEFAULT中也不能用列名。

[ 本帖最后由 go2011 于 2011-5-25 11:51 编辑 ]
2011-05-25 11:45
LOVE1314520
Rank: 2
等 级:论坛游民
帖 子:16
专家分:16
注 册:2011-5-25
收藏
得分:0 
回复 3楼 go2011
那应该怎样写,才可以啊。
2011-05-25 12:06
LOVE1314520
Rank: 2
等 级:论坛游民
帖 子:16
专家分:16
注 册:2011-5-25
收藏
得分:0 
来人帮帮我啊
2011-05-25 13:37
go2011
Rank: 6Rank: 6
等 级:侠之大者
帖 子:56
专家分:445
注 册:2011-4-21
收藏
得分:0 
create table Borrow
(
    RID          varchar(50) not null ,    --读者编号,复合主键,读者信息表的外键,必填
    BID          varchar(50) not null ,    --图书编号,复合主键,图书信息表的外键,必填
    LendDate     datetime default(getdate()),    --借阅日期,复合主键,默认为当前日期,必填
    WillDate     datetime default(dateadd(mm,1,getdate())),check(WillDate>=LendDate),    --应还日期,必须大于等于借阅日期,默认为借阅日期+1个月
    ReturnDate   datetime                  --实际归还日期,默认为空
)

注意check前的逗号,它使列级check变为表级check,表级check能引用同一表中的列。
2011-05-25 23:57
舟殇
Rank: 1
等 级:新手上路
帖 子:3
专家分:3
注 册:2011-5-2
收藏
得分:3 
学习了

追求优秀
2011-05-29 01:04
w123012306
Rank: 9Rank: 9Rank: 9
来 自:湖南
等 级:蜘蛛侠
威 望:4
帖 子:307
专家分:1180
注 册:2010-4-22
收藏
得分:3 
study

楼上,楼下的一定要幸福开心哦!
2011-05-30 09:24
快速回复:SQL Server 问题?欢迎来解答,
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024699 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved