【发布时间】:2015-12-24 06:04:45
【问题描述】:
我花了几个小时研究如何创建一个有助于我的程序的 Java 方法。我对 MySQL 很陌生,所以我不是最有经验的人。
我要做的是编写一个 Java 方法,该方法检查表中是否存在以用户名命名的列。如果它不存在,它将创建该列。
我在互联网上看到了很多关于我的问题的类似解决方案的教程。我不明白我应该如何将 TABLE_SCHEMA 实现为 java 方法,因为我只知道 MySql 的基础知识。
很高兴看到如何在 Java 方法中实现这个或其他一些解决方案。由于我无法弄清楚,我大部分都删除了我以前的工作,如果我需要证明这一点,很抱歉(这是我的第一个问题。)
编辑:
try {
ResultSet res = conn.createStatement()
.executeQuery("ALTER TABLE `package_table` ADD " + username + " VARCHAR(15);");
if (!res.next()) {
conn.createStatement()
.executeUpdate("INSERT INTO `package_table` (`uuid`, `name`, `packages`) VALUE ('"
+ event.getPlayer().getUniqueId() + "', '" + event.getPlayer().getName() + "', '" + "" + "');");
}
} catch (SQLException e) {
e.printStackTrace();
try {
conn.close();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
编辑2: 我需要做列的原因是我需要存储用户名的“包”。可以有“无限”数量的包。
谢谢, 杰克
【问题讨论】:
-
您的代码在这里会有所帮助,因为我们不一定知道您的实现细节(例如,您使用的是原始 JDBC 还是 Hibernate 等框架)。
-
“我不明白我应该如何实现 TABLE_SCHEMA”是什么意思?
-
我添加了我正在使用的代码示例。
-
您真的需要为每个用户添加一列吗?它错了..!
-
为我正在做的项目做行更好。至少一个程序员朋友是这么说的。我会用更多信息更新帖子!