當前位置:首頁 » 操作系統 » 資料庫不為空的

資料庫不為空的

發布時間: 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不能換位置。

熱點內容
c語言16進製表示方法 發布:2025-05-17 13:11:25 瀏覽:479
ftp單位 發布:2025-05-17 13:10:03 瀏覽:141
c語言編寫n的階乘 發布:2025-05-17 13:10:02 瀏覽:683
lockjava 發布:2025-05-17 13:02:08 瀏覽:310
只狼和看門狗哪個配置高 發布:2025-05-17 12:50:21 瀏覽:205
扁桃玩的伺服器地址 發布:2025-05-17 12:18:25 瀏覽:511
u盤上傳歌 發布:2025-05-17 12:14:51 瀏覽:615
入門c語言設計 發布:2025-05-17 12:08:31 瀏覽:41
c3演算法 發布:2025-05-17 12:04:19 瀏覽:365
phprecv 發布:2025-05-17 11:55:00 瀏覽:616