[英]import .sql file in postgres using \i command from java
我正在尝试使用“ \\ i E:/dump.sql”命令从postgres中的.sql文件导入数据库,它可以从postgres命令提示符下正常工作,但是当我从java尝试同样的操作时,它会在“ \\”处引发错误,我代码是
connection = DriverManager.getConnection( "jdbc:postgresql://localhost:5432/database","postgres", "passwd");
PreparedStatement ps3 = connection.prepareStatement("\\i E:/dump.sql");
boolean res3= ps3.execute();
System.out.println("imported succesfully .."+res3);
使用JDBC驱动程序/接口,您只能使用SQL,而您要尝试的是发出PostgreSQL命令行工具( psql
)特定命令。 那行不通。
如果您坚持要这样做,则可以使用Runtime.getRuntime().exec(...)
方法,例如
Runtime.getRuntime().exec( "psql -f dump.sql" );
干杯,
长话短说-您不能。 \\i
不是PostgreSQL命令(如:PostgreSQL数据库引擎)。 它是psql
的命令psql
是用于与数据库进行交互的命令行工具。
如果通过JDBC连接数据库,则说明您未使用psql,因此无法使用其命令( \\i
, \\o
等)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.