首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JDBC - NetBeans x MySQL

JDBC - NetBeans x MySQL
EN

Stack Overflow用户
提问于 2019-10-13 15:21:12
回答 1查看 37关注 0票数 0

我正在尝试在NetBeans中创建一个Java应用程序,它允许用户通过GUI使用大多数MySQL RDBMS功能。我已经成功地编写了以下代码:

创建Database

  • Dropping a Database

  • Creating表给出表名选项的
  1. ,否。的数据类型,每个列的数据类型(

)。

我被困在用户可以在刚刚创建的表中插入记录的部分。我想不出“插入表值.”查询可以根据用户要输入的表动态创建和传递。当然,该表可以有任意数量的列。

EN

回答 1

Stack Overflow用户

发布于 2019-10-13 16:24:16

我不知道这是不是正确的方法,但当我在过去遇到同样的问题时,我就是这样解决的:

我运行这个查询来查找表中的列数。

代码语言:javascript
运行
复制
    SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE table_catalog = 'database_name' AND table_name = 'table_name'

然后根据no列创建一个动态sql查询:

代码语言:javascript
运行
复制
    String sql = "Insert into tablename values(";
    for(int i = 1;i<=columns;i++){
        sql += "?";
        if (i < columns) {
        sql += ", ";
        }
    }
    sql+=");";

然后开了一份准备好的陈述

代码语言:javascript
运行
复制
    PreparedStatement ps = con.prepareStatement(sql);
    ResultSet rs = ps.executeQuery();

如果您也不知道列的约束和数据类型,请尝试解析

代码语言:javascript
运行
复制
    desc tablename

我知道这一定是最糟糕的解决办法,但它对我有效;)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58364961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档