我想从CSV文件创建一个新的嵌入式h2数据库。 下面是CSV文件的片段如何从CSV文件的某些字段创建h2数据库
国家,城市,AccentCity,地区,人口,经纬度
广告,aixovall,Aixovall,06,42.4666667,1.4833333
广告,安道尔,安道尔,07,42.5,1.5166667
广告,安道尔城,安道尔,07,20430,42.5,1.5166667
广告,安道尔 - VIEILLE,安道尔 - 维埃耶,07,42.5, 1.5166667
广告,安道尔,安道尔,07,42.5,1.5166667
我不想检索csv文件的各个领域。其实,我希望他们除了城市和地区字段。
而且,如果人口的内容不是空的,我只想将csv文件的内容插入到数据库中。
因此,在上面的csv示例中,我们必须只将第三行插入到h2表WORLDCITIES中,因为它的“人口”字段被指示。
这是我写的一段代码。但是,正如你所看到的,这还不够:
conn = DriverManager.getConnection(connectionURL, connectionProps);
Statement stmt = conn.createStatement();
stmt.execute("CREATE TABLE WORLDCITIES"
+ " AS SELECT COUNTRY, ACCENTCITY, POPULATION, LATITUDE, LONGITUDE"
+ " FROM CSVREAD('snippet.csv'));
如果我理解正确,CSVREAD创建使用VARCHAR类型的字段,但我想这样的事情:
COUNTRY VARCHAR( 3),ACCENTCITY VARCHAR(40),人口漂浮,纬度漂浮,长度漂浮
预先感谢您的帮助。
非常感谢,最后我确实使用过你的解决方案! – paissad 2011-03-03 04:49:21