我有一个文件 university.txt,如下所示:
阿拉巴马州 航空大学 阿拉巴马农工大学 阿拉巴马州立大学 康考迪亚学院-塞尔玛 福克纳大学 亨廷顿学院 杰克逊维尔州立大学 贾德森学院 迈尔斯学院 奥克伍德学院 桑福德大学 东南圣经学院 南方基督教大学 春山学院 斯蒂尔曼学院 塔拉迪加学院 北阿拉巴马大学 南阿拉巴马大学 西阿拉巴马大学 阿拉斯加州 阿拉斯加圣经学院 阿拉斯加太平洋大学 谢尔顿杰克逊学院 阿拉斯加大学-安克雷奇 阿拉斯加大学 - 费尔班克斯 阿拉斯加大学 - 东南部 亚利桑那 美洲印第安人神召会学院 亚利桑那州立大学 亚利桑那州立大学东 亚利桑那州立大学西 德弗里大学-凤凰城 安柏瑞德航空大学 大峡谷大学 中北大学 北亚利桑那大学
.. 等等,在这种情况下,阿拉巴马州、阿拉斯加州和亚利桑那州是地点,其他地方都是大学。我想要做的是将位置加载到一个名为的表中Location
,将大学加载到一个名为 的表中University
,其中表Id
的 是Location
表的 FK University
,如下所示:
CREATE TABLE Location (
Id SERIAL PRIMARY KEY,
Name TEXT
);
CREATE TABLE University (
Id SERIAL PRIMARY KEY,
Location INTEGER REFERENCES Location (Id) NOT NULL,
Name TEXT
);
所以我想在 Postgres 中做的是这样的:
for (int i=0 until i = universities.size() i++){
//each entry in the universities vector is a tuple with the first entry being the country/state
//and the second entry being a vector of the universities as String's
Vector tuple = (Vector)universities.get(i);
//insert into location table
String state = (String)tuple.get(0);
Vector u = (Vector)tuple.get(1);
for(int j=0; until j =u.size(); j++){
//insert into university table with i as FK to location table
任何人都知道如何做到这一点?