如何在Java中创建一个具有可变列的数据库表?
我有一个 Java Web 应用程序。我必须创建一个表,并且我正在使用 JDBC。
我不知道列表标记中会有多少个值,因此对于每个值标记,我需要在表中对应的列。这些值是从其他一些应用程序获取的。
因此,我可以创建一个具有 n 列的表,其中 n 每次都可以不同。
<list>
<value>Name</value>
<value>Address</value>
<value>Contact No</value>
..
.
.
</list >
我怎样才能实现这个目标?
I have a Java web application. I have to create a table, and I am using JDBC.
I don't know in my list tag how many values will be there, so for each value tag, I need a corresponding column in my table. These values are fetched from some other application.
So I can create a table having n number of columns where n can be different every time.
<list>
<value>Name</value>
<value>Address</value>
<value>Contact No</value>
..
.
.
</list >
How can I achieve this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您应该使用 n 行来存储值,而不是 n 列。列在数据库中以某种方式“固定”,而添加/删除/修改行很容易。
You should use n rows to store the values, not n columns. Columns are somehow 'fixed' in a database, while it is easy to add/delete/modify rows.
您需要动态处理表结构。存在多种解决方案。
使用 JDBC,只需查询 Oracle 并检索表的列即可。
现在您知道哪一列存在或不存在,并且您可以根据需要
ALTER
您的表。You need to deal with your table structure dynamically. Several solutions exist.
With JDBC, simply query Oracle and retrieve the columns of your table.
Now you know which column exists or not and you can
ALTER
your table as you want.