gpt4 book ai didi

java - 在java程序中运行psql命令

转载 作者:行者123 更新时间:2023-11-29 12:16:00 24 4
gpt4 key购买 nike

我有一个要求,我需要使用 java 代码来创建/删除/更改 postgres 表。

我写了一个程序如下:

public static void main(String[] args) throws IOException {
System.out.println("Hello World!");
Process p = Runtime.getRuntime().exec("psql -U postgres -d testdb -h localhost -p 5433 -f D:\test.sql");
}

test.sql 文件如下所示,

Create TABLE MyTable1
(
VersionNumber VARCHAR(32) NOT NUll
);

Create TABLE MyTable2
(
VersionNumber VARCHAR(32) NOT NUll
);

Create TABLE MyTable3
(
VersionNumber VARCHAR(32) NOT NUll
);

问题:

如果我运行相同的 psql 命令:

psql -U postgres -d testdb -h localhost -p 5433 -f D:\test.sql

在命令行中,它要求输入密码并创建表。

但是在java程序中,并没有规定提供密码。请让我知道如何实现它。

最佳答案

您可以使用 connection URL相反:

psql -f d:\test.sql postgresql://postgres:password@localhost:5433/testdb

关于java - 在java程序中运行psql命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54036656/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com