请帮忙看看是怎么回事

jjdbear 2010-12-13 10:05:39
create table teacher
(教工号 int primary key identity(1,1),
姓名 varchar(20) null,
家庭住址 char(30) null,
电话 int null,
性别 char(2) default "男" ,
课程名 varchar(10) constraint chanamel
check(课程名 in ("数学","语文","化学","英语","物理"))

)
编译报错说,红色字部分错误,说是不能用"男"这个列名,具体不明白是为什么?请帮忙改正
...全文
73 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
hahaboy521 2010-12-13
  • 打赏
  • 举报
回复
同意上贴
abuying 2010-12-13
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 jjdbear 的回复:]

具体错误报告:在此上下文中不允许使用 '男'。此处只允许使用常量、表达式或变量。不允许使用列名。
[/Quote]
create table teacher
(教工号 int primary key identity(1,1),
姓名 varchar(20) null,
家庭住址 char(30) null,
电话 int null,
性别 char(2) default '男',
课程名 varchar(10)
check(课程名 in ('数学','语文','化学','英语','物理'))
)

或者
你可以编写一个函数,输出 男,再引用,与getdate()引用相同

create function getSex() returns char(2)
as
returns '男'
--再运行
create table teacher
(教工号 int primary key identity(1,1),
姓名 varchar(20) null,
家庭住址 char(30) null,
电话 int null,
性别 char(2) not null default (getSex()),
课程名 varchar(10)
check(课程名 in ('数学','语文','化学','英语','物理'))

)

飘零一叶 2010-12-13
  • 打赏
  • 举报
回复
性别 char(2) default "男"   --default '男'

单引号
viqn7qdnt 2010-12-13
  • 打赏
  • 举报
回复

create table teacher
(教工号 int primary key identity(1,1),
姓名 varchar(20) null,
家庭住址 char(30) null,
电话 int null,
性别 char(2) default '男',
课程名 varchar(10) constraint chanamel
check(课程名 in ('数学','语文','化学','英语','物理'))
)
好汉坡 2010-12-13
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 jjdbear 的回复:]
具体错误报告:在此上下文中不允许使用 '男'。此处只允许使用常量、表达式或变量。不允许使用列名。
[/Quote]
3#代码试了吗
oO寒枫Oo 2010-12-13
  • 打赏
  • 举报
回复
所有双引号 改成单引号
jjdbear 2010-12-13
  • 打赏
  • 举报
回复
感谢了,居然犯这种低级错误,我们的书也太差劲了
jjdbear 2010-12-13
  • 打赏
  • 举报
回复
具体错误报告:在此上下文中不允许使用 '男'。此处只允许使用常量、表达式或变量。不允许使用列名。
jwdream2008 2010-12-13
  • 打赏
  • 举报
回复
create table teacher
(教工号 int primary key identity(1,1),
姓名 varchar(20) null,
家庭住址 char(30) null,
电话 int null,
性别 char(2) default '男' ,
课程名 varchar(10) constraint chanamel
check(课程名 in ("数学","语文","化学","英语","物理"))

)
好汉坡 2010-12-13
  • 打赏
  • 举报
回复
create table teacher
(教工号 int primary key identity(1,1),
姓名 varchar(20) null,
家庭住址 char(30) null,
电话 int null,
性别 char(2) default '男',
课程名 varchar(10)
check(课程名 in ('数学','语文','化学','英语','物理'))

)
jjdbear 2010-12-13
  • 打赏
  • 举报
回复
这个……好像我用的是半角的
王向飞 2010-12-13
  • 打赏
  • 举报
回复
性别 char(2) default "男" 用半角的

34,588

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧