我有一個關於使用Java在多個表中創建多個元組的問題。在多個表中創建多個元組
這是我的表格。
create table department(
dept_name varchar(20) primary key,
building varchar(15),
budget numeric(12,2)
);
create table student
(ID int,
name varchar(20) not null,
dept_name varchar(20),
tot_cred numeric(10,0),
primary key (ID),
foreign key (dept_name) references department(dept_name)
);
什麼我試圖做到的是,Java程序會提示用戶
「多少元組,你會在部門表樣?」 用戶:1000. 「在Department表中創建1000個元組」。
「多少元組,你會在學生的表樣?」 用戶:500. 「在學生表中創建500個元組」。
現在我可以插入一個元組到部門這麼說
"Insert into department ('CSI', 'TownHall', '120000')";
然後從這裏我做一個
Insert into student (id, name, dept_name,tot_cred)
select '"+counts+"', 'Student"+counts+"', dept_name, '10'
from department
where dept_name='CSI'.
計數++是while循環,這樣就不會有重複的PK的。
所以我可以創建在學生表10000元組,但我不能在Department表創造超過1元組,因爲CSI不能重複。
但是,如果我不插了部門表中ATLEAST一個元組,然後我失去了外鍵約束。
有什麼想法?
PS。我不是在這裏爲你們只是做代碼只需要一個想法
布蘭登
是啊,所以我做到了。但是我只能創建與部門元組一樣多的學生元組。 – 2012-07-24 15:20:23
我已經更新了我的答案。我希望這能幫助你在正確的方向上提供一些指引。 – Sujay 2012-07-24 15:57:27
是的,它是一個編程分配和你的權利,我不希望有太多的信息,我想要做到這一點。我要去試試這個PreparedStatement,然後再看看這個。 – 2012-07-24 16:23:16