课程号 课程名 先修课 C801 数学 //此记录先修课的值为''而非 'NULL' C802 C++ C807 C803 数据结构 C802 C804 数据库 C803因此用 select * from 课程表 where 先修课 IS NULL 查询结果是空呢?无一条记录 而用select *from 课程表 where 先修课 IS not null 却所有的记录都出来了
select * from 课程表 where 先修课 IS NULL 是正确的 没有结果是因为你那个字段的数据是''而不是nullalter table tablename drop constraint pk_name
我上边是两个问题
一个怎么使用is null查询为空的记录一个怎么删除表中原先键好的主键 用语句完成
C801 数学 //此记录先修课的值为''而非 'NULL'
C802 C++ C807
C803 数据结构 C802
C804 数据库 C803因此用
select * from 课程表
where 先修课 IS NULL
查询结果是空呢?无一条记录
而用select *from 课程表
where 先修课 IS not null 却所有的记录都出来了
where 先修课 IS NULL
是正确的
没有结果是因为你那个字段的数据是''而不是nullalter table tablename
drop constraint pk_name
课程号 课程名 先修课
C801 数学 -------很可能是 ''而非null查一下,表中的“是否允许空字符”设置,是不是这里有问题。
create table 课程表
(课程号 char(4) not null primary key,
课程名 char(12),
先修课 char(4)
)
是不是我这样写不对?因为我记录里确实是‘’,而非空
我插入纪录是这样写的
insert 课程表 values('c801','数学','')
alter table tablename
drop constraint pk_name
我用了不行 说我的主建名字不正确 所以我想问怎么样察看我的主建名字
alter table 学生表
drop constraint Pk_学号
服务器: 消息 3728,级别 16,状态 1,行 20
'pk_学号' 不是约束。
我的学生表(学号,姓名,年龄)
学号是主键
你可以用企业管理器查看一下