当前位置:首页 » 操作系统 » 数据库不为空的

数据库不为空的

发布时间: 2023-10-25 03:06:05

A. 数据库的外键何时允许为空何时不为空

数据库的外键可以为空,也可以非空,但是如果非空,则这个值必须在主表中存在。

比如主表是一个班级,主键是班级id,
字表是学生分配班级表,主键是学生id,外键是所在班级id。

如果一个学生的外键id为空,说明这个学生还没有被分配到任何一个班级
如果一个学生的外键id非空,并且是班级表中的某个id,则说明学生分配到这个班级
如果一个学生的外键id非空,并且不属于任何班级,则数据插入肯定报错。也就是说这种情况不存在。

--例子:
create table clerk(
id int,
name varchar2(10),
manager_id int);

alter table clerk add constraint pk_clerk_id primary key(id);
alter table clerk add constraint fk_clerk_manager_id foreign key(manager_id) references clerk(id);
insert into clerk values (1, 'boss', null);
insert into clerk values (2, 'zhang', null);
insert into clerk values (3, 'zhang', 2);
--、下列语句报错,因为5不是主键的值
insert into clerk values (4, 'zhang', 5);
SQL> select * from clerk;

ID NAME MANAGER_ID
---------- ---------- ----------
1 yang
2 zhang
3 zhang 2

B. 数据库SQL语句查询表中不为空的字段的数量为5的SQL语句

1、select case C_NUMBER when NULL then '0' else C_NUMBER end from T_SCORE 如果这条语句执行不对,那么说明你的C_NUMBER字段的NULL不是真正的NULL,而是字符串“NULL”,所以需要这样的SQL: select case C_NUMBER when 'NULL' then '0' when 'null' then '0' else C_NUMBER end from T_SCORE 2、多个字段可以这样写:selectcase C_NUMBER when 'NULL' then '0' when 'null' then '0' else C_NUMBER end,

C. 如何为数据表新增不为空的字段

  1. 如果想要增加一个不为空的字段可以,但要放进先放入默认值。

  2. 比如在scott的emp中加入一列'T'不为空的,可以这么写;

  3. alter table emp add T number(8) default (0) not null;

  4. not null 和 default不能换位置。

热点内容
密码器动态密码怎么弄 发布:2025-07-14 00:44:27 浏览:386
小米怎么把视频加密 发布:2025-07-14 00:42:59 浏览:406
在线申诉找回密码根本什么都没有 发布:2025-07-14 00:41:22 浏览:306
拉新用什么安卓手机可以 发布:2025-07-14 00:41:19 浏览:418
androidhome键退出 发布:2025-07-14 00:30:03 浏览:506
我都世界模组反编译教程 发布:2025-07-14 00:29:45 浏览:646
法因数控钻床编程手册 发布:2025-07-14 00:18:26 浏览:490
gcc编译怎么知道错误的行数 发布:2025-07-14 00:06:21 浏览:383
压强算法 发布:2025-07-14 00:02:52 浏览:552
dns怎么配置端口 发布:2025-07-13 23:49:16 浏览:761