資料庫的欄位問題 |
尚未結案
|
20052020
初階會員 發表:121 回覆:79 積分:40 註冊:2005-01-18 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
1. 用 "Default" (大部分資料庫都有這功能), 如: Create table tt (c1 number default 0 not null) 2. call ? 你是說 Lookup 嗎 ? 如果是, 這個程式要自己寫. 資料庫只能運用 "constraint" 或 "trigger" 來驗證 Foreign Key, 如: 用 constraint: CREATE TABLE E_1 ( c1 CHAR(18) NOT NULL, PRIMARY KEY (c1) ); CREATE TABLE E_2 ( p1 CHAR(18) NOT NULL, c1 CHAR(18) NULL, PRIMARY KEY (p1), FOREIGN KEY (c1) REFERENCES E_1 ); 用 Trigger create trigger tI_E_2 after INSERT on E_2 for each row declare numrows INTEGER; begin select count(*) into numrows from E_1 where :new.c1 = E_1.c1; if ((:new.c1 is not null) and (numrows = 0)) then raise_application_error( -20002, 'Cannot INSERT E_2 because E_1 does not exist.' ); end if; end; 3.用 "sum", 如: select sum(c1),sum(c2)...,sum(c10) from tt group by c11發表人 - Mickey 於 2005/08/05 08:30:28 |
cwc65536
初階會員 發表:47 回覆:121 積分:48 註冊:2004-10-14 發送簡訊給我 |
插花請教 Mickey 版主 :
Create table tt (c1 number default 0 not null)
如果是字串, default 該用啥 ?
不知,在此插花相關問題, 恰當嗎 ? 2. 回應 20052020 , 以一個生手的角度猜測(因為,問題不清楚):
若 A 表的代號欄位, 要關聯出 B表的 名稱欄位, 可以用 join
select *,B.name Bname from A left join B on (A.no=B.no) 若是 要用 B 表, 去建立 A 表
select * into A from B 3. 在我的 SQL explor 上測試, 如果要 group , select 上要加 c11 否則會錯
select c11,sum(c1),sum(c2)...,sum(c10) from tt group by c11
|
shunaarom
一般會員 發表:8 回覆:34 積分:18 註冊:2003-07-02 發送簡訊給我 |
引言: 請問各位前輩 小弟有一些資料庫的觀念問題還不是很懂 望起各位前輩賜教 1.為了解決欄位不允許空白的問題,需在該欄位上加什麼值? (例如:某個欄位不填程式自動加值,此值在表單上是看不到的) 2.當我們在建立一個A表單時,若需要B表單某一個欄位的值,該如何去call ,B表單的欄位來用? 3.當我有10個欄位每一個欄位都要相加種合該如何寫? Select SUM(欄位) As 加總 From Table Group By第1個問題~ 要看大大的欄位為何~假設是日期~ 那可以填入一個較離普的日期~如2099/12/31~之後只要讀到這個~ 就表示當時是沒有填值的~ 如為一字串或數字~要先看欄位(資料)是什麼~在存一個不可能發生的值~ 第2個問題~ 可以用 inert into ~可以去本一下用法~和你自己需求~ 第3個問題~ Select 欄位 As 加總 From Table Group By 欄位 |
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |