Java和数据库 - 初始化表

时间:2013-08-31 20:32:23

标签: java database-design

您好我正在尝试使用SQLite在Java中创建一个地址簿类型程序。目前,它所要做的就是要求用户提供要添加到表格中的联系人姓名和电话号码。

我还没有开始编码,但我无法理解的是桌面创作。假设我写了一个程序

  1. 连接数据库
  2. 创建表格
  3. 询问用户有关添加联系人数据(到表格)的详细信息。
  4. 我编译一次没有错误。但是每次我运行程序时都会创建一个新表。我唯一能想到的是数据库和表创建是在Java程序之外完成的。

2 个答案:

答案 0 :(得分:2)

在许多企业环境中,您的应用程序的数据库用户可能无权执行DDL(CREATE,ALTER等等)语句。因此,在这些情况下,通常会在应用程序之外管理数据库布局。

有一些可用的工具试图简化这项工作。例如,非常复杂的是 Liquibase

但是,如果要在应用程序内部管理数据库,最佳做法是定义一个额外的表,用于维护数据库模式版本号。在应用程序启动时,您检查此架构版本,然后 - 如果适用 - 执行您的DDL语句以创建或更改架构以获得所需的shema版本。

答案 1 :(得分:0)

是的,在java程序之外创建表总是好的。只需在java应用程序中使用这些表 所以你现在可以设计。
1.连接数据库。
2.询问用户有关添加联系人数据的详细信息(到表中)。