【问题标题】:JSP & MySQL | Error when creating tableJSP 和 MySQL |创建表时出错
【发布时间】:2015-08-04 17:12:15
【问题描述】:

我正在使用 Eclipse EE,Tomcat 6 服务器连接到 win7 上的 MySQL 服务器。 我能够通过 JSP 连接到数据库并发送诸如 SELECT 和 DESCRIBE 之类的命令,但是如果我尝试创建一个表,JSP 代码将根本无法运行! 这是为什么? (在 MySQL 命令行上检查了我的 SQL 代码,它工作正常。)

JSP 错误:

org.apache.jasper.JasperException:处理JSP页面/index.jsp处发生异常

JSP 编码:

try // DB login
    {
        String connectionURL = "jdbc:mysql://localhost/ofir";
        Class.forName("com.mysql.jdbc.Driver").newInstance();
        con = DriverManager.getConnection(connectionURL, "root", "");
        stmt = con.createStatement();
        connected = true;
    }
    catch(Exception ex)
    {
        out.println("Unable to connect to database.");
        connected = false;
    }
    rs = stmt.executeQuery("CREATE table users (fname varchar(50), nname varchar(20), pass varchar(50), email varchar(50), gender boolean, age int(3), region varchar(10), notes varchar(1000))"); // Line of the error

*关于代码的注意事项 - 所有变量都使用 '

【问题讨论】:

    标签: mysql eclipse jsp


    【解决方案1】:

    对于 CREATE TABLE,我们必须使用 stmt.executeUpdate(sql) 。不是stmt.executeQuery(sql)

    【讨论】:

    • 好的,那么在什么情况下我需要使用其中之一?
    • 它返回一个 int。 int 表示受影响的行数。但它仅适用于您插入或更新行的语句。对于您的情况(CREATE Table),它将始终返回 0,因为它并没有真正更改任何行。您可以忽略您的案例的返回值。
    猜你喜欢
    • 2013-03-01
    • 2015-02-20
    • 1970-01-01
    • 1970-01-01
    • 2013-02-07
    • 2015-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多