九月 15, 2024
摘要:在本教程中,您将学习如何使用 JDBC 从 Java 程序在 PostgreSQL 数据库中创建表。
目录
创建表的程序
以下示例演示如何通过 Java 程序在 PostgreSQL 数据库中创建表:
import java.sql.SQLException;
public class Main {
public static void main(String[] args) {
var sql = "CREATE TABLE products (" +
" id SERIAL PRIMARY KEY," +
" name VARCHAR(255) NOT NULL," +
" price DECIMAL(10, 2) NOT NULL" +
");";
try (var conn = DB.connect();
var stmt = conn.createStatement()) {
stmt.executeUpdate(sql);
} catch (SQLException e) {
System.err.println(e.getMessage());
}
}
}
它是如何工作的。
首先,构造一个创建products
表的CREATE TABLE
语句:
var sql = "CREATE TABLE products (" +
" id SERIAL PRIMARY KEY," +
" name VARCHAR(255) NOT NULL," +
" price DECIMAL(10, 2) NOT NULL" +
");";
第二步,使用DB
类与本地 PostgreSQL 服务器上的sales
数据库建立连接:
var conn = DB.connect();
第三步,通过调用Connection
对象的createStatement()
方法,创建一个Statement
:
var stmt = conn.createStatement()
第四步,通过调用executeUpdate()
方法,执行CREATE TABLE
语句。
stmt.executeUpdate(sql);
如果发生任何SQLException
异常,try-catch 语句将显示一条错误消息。
由于connect()
和createStatement()
方法的调用都包装在 try-with-resources 语句中,因此Statement
和Connection
对象将正确关闭。
如果您运行该程序,它将在sales
数据库中创建products
表。
验证表的创建
首先,在 Windows 上打开命令提示符,或在类 Unix 系统上打开终端。
第二步,使用psql
客户端工具,连接到本地 PostgreSQL 服务器上的sales
数据库:
psql -U postgres -d sales
它会提示您输入密码。
第三步,使用\dt
命令显示sales
数据库中的表:
\dt
输出:
List of relations
Schema | Name | Type | Owner
--------+----------+-------+----------
public | products | table | postgres
(1 row)
输出表明products
表已创建成功。
总结
调用 Statement 对象的executeUpdate()
方法,执行CREATE TABLE
语句,在 PostgreSQL 数据库中创建新表。