Java MySQL 更新查询

2024-01-23

我收到错误“无法发出数据”。

这里是SSCCE

//package mysqltest;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.applet.Applet;
import java.awt.TextArea.*;
import java.sql.*;
import java.util.*;
import javax.swing.plaf.*;
import javax.swing.plaf.basic.*;
import java.net.*;
import java.applet.*;

    public class test extends JApplet {

      public JTextArea c;

      public void init() {

          c = new JTextArea();

          add(c);
          c.append("Looking for database...");

        Connection conn = null;
        Properties props = new Properties();
        String url = "jdbc:mysql://localhost:3306/";
        String dbName = "mystik";
        String driver = "com.mysql.jdbc.Driver";
        String userName = "root";
        String password = "";
        String loggedusername = getParameter("name");
        try {
          Class.forName(driver).newInstance();
          props.put("user", "root");
          conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mystik", props);
          c.append("\nConnected to the database");


                        c.append("\nGetting stats for: " + loggedusername);
                        PreparedStatement statement = conn.prepareStatement( "select * from `user` where `username` = '"+loggedusername+"'");
                        ResultSet result = statement.executeQuery();
                        // just a dumb mysql statement!
                        while(result.next())
                        {
                        c.append("\nUsername: "+result.getString(2)+ "\nLevel: "+result.getString(6)+"\nEXP: "+result.getString(8)+"\n");
                        }

                        PreparedStatement updateEXP = conn.prepareStatement( "update`user` set `exp` = '666'  where `username` = '"+loggedusername+"'");
                        ResultSet updateEXP_done = updateEXP.executeQuery();

                        while(result.next())
                        {
                        c.append("\nUsername: "+result.getString(2)+ "\nLevel: "+result.getString(6)+"\nEXP: "+result.getString(8)+"\n");
                        }


          conn.close();
          c.append("\nDisconnected from database");
        } catch (Exception e) {
          e.printStackTrace();
        }

      }

    }

它有效……仅此而已updatejava查询没有。

这是 JTextArea 看到的内容:

Looking for database...
Connected to the database
Getting stats for: weka
Username: weka
Level: 1
EXP: 1

这是我的错误:

added manifest
adding: test.class(in = 2440) (out= 1308)(deflated 46%)
adding: mysql-connector-java-5.1.13-bin.jar(in = 767492) (out= 735869)(deflated
4%)

Warning:
The signer certificate will expire within six months.
java.sql.SQLException: Can not issue data manipulation statements with executeQu
ery().
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1075)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:984)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:929)
        at com.mysql.jdbc.StatementImpl.checkForDml(StatementImpl.java:436)
        at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:
2176)
        at test.init(test.java:53)
        at sun.applet.AppletPanel.run(AppletPanel.java:424)
        at java.lang.Thread.run(Thread.java:619)

最后,这是我如何使用 .bat 文件进行编译。

@ECHO OFF
C:
CD \wamp\www\mystikrpg\mysqltest
javac -cp mysql-connector-java-5.1.13-bin test.java
jar cvf mysqlTry.jar test.class mysql-connector-java-5.1.13-bin.jar
jarsigner -keystore dankey -storepass soccer -keypass soccer mysqlTry.jar gamerpg
appletviewer -J-Djava.security.policy=game.policy mysqltry.html

我该如何修复这个错误? 谢谢。


AS 准备好的声明 http://download.oracle.com/javase/1.4.2/docs/api/java/sql/PreparedStatement.html文档:

执行这里的SQL语句 PreparedStatement 对象,它必须 是 SQL INSERT、UPDATE 或 DELETE 陈述;或 SQL 语句 不返回任何内容,例如 DDL 陈述。

要执行更新、删除或插入数据库中任何数据的查询,您不能使用executeQuery...您必须使用:.executeUpdate(query)

所以这段代码(WRONG):

   PreparedStatement updateEXP = conn.prepareStatement("update `user` set `exp` = '666'  where `username` = '"+loggedusername+"'");
   ResultSet updateEXP_done = updateEXP.executeQuery();

必须看起来像(GOOD):

正确使用

   PreparedStatement updateEXP = conn.prepareStatement("update `user` set `exp` = ? ");
   updateEXP.setString(1, loggedusername);
   ResultSet updateEXP_done = updateEXP.executeUpdate();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java MySQL 更新查询 的相关文章

  • Grails 2.3.0 自动重新加载不起作用

    我最近将我们的项目升级到 grails 2 3 0 一切工作正常 除了每当我更改代码时自动重新加载都无法工作的问题 这包括所有项目工件 控制器 域 服务 gsps css 和 javascript 文件 我的旧版本 grails 可以正常工
  • Spring安全“记住我”cookie在第一个请求中不可用

    我无法在登录请求后检索 Spring 记住我 cookie 但它在对受保护页面的下一个请求中工作正常 谁能告诉我怎样才能立即得到它 我在登录请求中设置了记住我的 cookie 但在 Spring 重定向回原始 受保护的 url 后无法检索它
  • 条件触发器的Django迁移sql

    我想创建一个触发器 仅在满足条件时插入表 我尝试过使用 IF BEGIN END 和 WHERE 的各种组合 但 Django 每次都会返回 SQL 语法错误 这里 type user id指的是触发该事件的人 user id指的是接收到通
  • 如何在 JSP 中导入类?

    我是一个完全的JSP初学者 我正在尝试使用java util List在 JSP 页面中 我需要做什么才能使用除以下类之外的类java lang 使用以下导入语句进行导入java util List 顺便说一句 要导入多个类 请使用以下格式
  • Java套接字:在连接被拒绝异常时重试的最佳方法?

    现在我正在这样做 while true try SocketAddress sockaddr new InetSocketAddress ivDestIP ivDestPort downloadSock new Socket downloa
  • MySQL如何获取unix时间戳的时间差

    我有一个保存值1506947452的变量 需要使用公式从该日期提取分钟 started data now date 但started date采用unix时间戳格式10位int数字 我以ajax形式收到并需要放入mysql查询i试试这个 S
  • 研究MySQL、SQLite源码了解RDBMS实现[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我知道实现数据库是一个很大的话题 但我想通过研究数据库系统的源代码来基本了解数据库系统的工作原理 例如
  • 隐式超级构造函数 Person() 未定义。必须显式调用另一个构造函数?

    我正在开发一个项目 但收到错误 隐式超级构造函数 Person 未定义 必须显式调用另一个构造函数 我不太明白它 这是我的人物课程 public class Person public Person String name double D
  • 计算日期之间的天数差异

    在我的代码中 日期之间的差异是错误的 因为它应该是 38 天而不是 8 天 我该如何修复 package random04diferencadata import java text ParseException import java t
  • Spring Security OAuth2简单配置

    我有一个简单的项目 需要以下简单的配置 我有一个 密码 grant type 这意味着我可以提交用户名 密码 用户在登录表单中输入 并在成功时获得 access token 有了该 access token 我就可以请求 API 并获取用户
  • 如何在 Eclipse Java 动态 Web 项目中使用 .properties 文件?

    我正在 Eclipse 中开发动态 Web 项目 我创建了一个 properties 文件来存储数据库详细信息 用户名 密码等 我通过右键单击项目和 New gt File 添加它 我使用了Java util包Properties类 但它不
  • 使用函数的 SQL 查询 - 如何获取列表的最大计数

    如何查询 MAXIMUM COUNT 交易次数 我的代码如下 SELECT customer id COUNT customer id FROM rental GROUP BY customer id HAVING MAX COUNT cu
  • 尝试使用等于“是”或“否”的字符串变量重新启动 do-while 循环

    计算行程距离的非常简单的程序 一周前刚刚开始 我有这个循环用于解决真或假问题 但我希望它适用于简单的 是 或 否 我为此分配的字符串是答案 public class Main public static void main String a
  • 解析输入,除了 System.in.read() 之外不使用任何东西

    我很难找到具体的细节System in read 有效 也许有人可以帮助我 似乎扫描仪会更好 但我不允许使用它 我被分配了一个任务 我应该以 Boolean Operator Boolean 的形式读取控制台用户输入 例如T F 或 T T
  • 如何在 Quartz 调度程序中每 25 秒运行一次?

    我正在使用 Java 的 Quartz Scheduling API 你能帮我使用 cron 表达式每 25 秒运行一次吗 这只是一个延迟 它不必总是从第 0 秒开始 例如 序列如下 0 00 0 25 0 50 1 15 1 40 2 0
  • 解决错误javax.mail.AuthenticationFailedException

    我不熟悉java中发送邮件的这个功能 我在发送电子邮件重置密码时遇到错误 希望你能给我一个解决方案 下面是我的代码 public synchronized static boolean sendMailAdvance String emai
  • JSON 到 hashmap (杰克逊)

    我想将 JSON 转换为 HashMapJackson http jackson codehaus org 这是我的 JSON String json Opleidingen name Bijz trajecten zorg en welz
  • phpActiveRecord 日期时间格式不正确

    当尝试使用 phpActiveRecord 在表中创建记录时 出现以下错误 Invalid datetime format 1292 Incorrect datetime value 2013 06 20 11 59 08 PDT for
  • Android AutoCompleteTextView 带芯片

    我不确定我是否使用了正确的词语来描述此 UI 功能 但我已附上我希望在我的应用程序中实现的目标的快照 它由 Go SMS 使用 用户在编辑文本中键入联系人 在用户从完成下拉列表中选择联系人后 该联系人将被插入到编辑文本中 如附图所示 编辑文
  • Java &= 运算符应用 & 或 && 吗?

    Assuming boolean a false 我想知道是否这样做 a b 相当于 a a b logical AND a is false hence b is not evaluated 或者另一方面 这意味着 a a b Bitwi

随机推荐

  • 在电子邮件正文中显示 Python HTML 表

    我编写了一个 python 脚本来查询数据库并以 HTML 表格式显示数据 我怎样才能让这个代码以表格的形式显示在电子邮件中 我尝试将代码粘贴到第二个脚本 EMAIL 的 html 标签内 但它不读取 python 代码 仅读取 HTML
  • CUDA 点积

    我正在做一个 cuda 教程 其中我必须制作两个向量的点积 实施教程中提供的解决方案后 我遇到了一些问题 这些问题已在this https stackoverflow com questions 15822412 dot product i
  • Rails Devise:如何(mem)缓存设备对用户对象的数据库请求?

    每次我点击经过身份验证的页面时 我都会注意到设计发出一条 SQL 语句 用户负载 0 2ms 选择users FROM users WHERE users id 1 限制 1 顺便说一句 我正在使用Rails 3 所以cache money
  • 为 DividerItemDecoration 设置可绘制对象

    我正在尝试为 DividerItemDecoration 设置自定义可绘制 线 但没有成功 错误在哪里 DividerItemDecoration dividerItemDecoration new DividerItemDecoratio
  • 垃圾收集:对象属性

    假设我有一个对象 其中包含另一个对象作为其属性 例如 var obj 1 42 When obj超出范围 所有嵌套对象是否都隐式销毁 或者我需要迭代它们并且delete明确地 是的 除非另一个参考仍然存在 var obj 1 42 var
  • 未找到 User 类型的属性索引

    我正在尝试在同一个项目中将 ElasticSearch 与 MySQL 一起使用 我在不同的项目中定义了两个存储库 但我总是收到此错误消息 Exception in thread main org springframework beans
  • Swagger.NET MVC Api 异常

    我一直在寻找提供自动生成的 API 文档的不同选项 Swagger 似乎就在那里 然而 当我第一次尝试这个时 我在启动时遇到了异常 运行 Visual Studio 2013 创建新的 Web API 项目 使用包管理器 运行 Instal
  • NSIncrementalStore 的简单英语解释

    我一直看到NSIncrementalStore当我一直在研究使用核心数据与 Web 服务交互的最佳方式时 这个问题就出现了 看完之后德鲁 克劳福德的文章 http sealedabstract com code nsincrementals
  • 有些控件没有绘制,看似随机

    我正在尝试为自己编写一个小 MFC 应用程序 以测试我正在训练的一些人工智能 因此 我添加了一个图片控件和一个静态控件 我可以在主窗口的 OnPaint 方法中自由地绘制内容 当只绘制一次应用程序时 它似乎可以工作 但我现在添加了一个在停止
  • 如何获取张量的值? Python

    在进行一些计算时 我最终计算出average acc 当我尝试打印它时 它输出 tf Tensor 0 982349 shape dtype float32 我如何获得0 98 它的值并将其用作普通浮点数 我想做的是将其中的一堆放在一个数组
  • 为什么标准输出不能被替换?

    出于教育目的 我尝试替换标准流 stdout stdin 和 stderr 我首先查找流的数据类型 我追溯到具有以下成员的 struct IO FILE gdb ptype IO FILE type struct IO FILE int f
  • FreeMarker 模板错误:以下内容已计算为 null 或缺失 |但事实并非如此

    我面临的错误是如此奇怪 一切看起来都很好 但是当浏览器向服务器发送 GET 请求时 我收到此错误 我想做的实际上是捕获 HTTP 参数 将它们保存在发送到 Freemarker 模板的 ArrayList 中保存的对象中 请你帮助我好吗 多
  • 计算 CRC 初始值而不是将 CRC 附加到有效负载

    我实现的大部分 CRC 都是追加计算出的 CRC 值到消息 有效负载 并在所有字节 包括 之后在接收器处检查零结果 CRC 值通过 CRC 寄存器输入 显然这是一个相当标准的方法 现在我想使用不同的方法 根据有效负载计算一个值 使用该值作为
  • 创建一个接受 POST 和 GET 的 Jax-RS RESTful 服务?

    我正在将现有的一项服务转变为 RESTful 并且我已经掌握了使用 RestEasy 的基本功能 我的一些客户端应用程序应该能够对多个服务执行 GET 和 POST 请求 我只是在寻找是否有任何简单的方法可以绕过 jax rs 来指定 AP
  • 我应该从 getFft 看到什么样的输出?

    好吧 我正在努力创建一个 Android 音频可视化应用程序 问题是 我从 getFft 方法中得到的结果与谷歌所说的它应该产生的结果不一致 我一直追溯到 C 源代码 但我对 C 或 FFT 不够熟悉 无法真正理解正在发生的事情 我将尝试包
  • sifr3 - 预取不起作用?

    我在启用 sifr 3 的网站的加载时间 大小方面遇到问题 并发现在我的应用程序中多次请求字体 swf 这可以在 firebug 的网络选项卡以及 apache 日志中看到 On http novemberborn net flash pr
  • 如何在Castle.DynamicProxy中使用IInterceptor?

    我写了一个这样的例子 简单计算器类 public class Calculator public int Add int a int b return a b 实现了DynamicProxy提供的 IInterceptor Serializ
  • 为什么“reset_index(drop=True)”函数会意外删除列?

    我有一个名为的 Pandas 数据框数据匹配 它包含 worker id unit id 和 caption 列 请参阅随附的屏幕截图 了解此数据框中的某些行 假设索引列不是按升序排列 我希望索引为 0 1 2 3 4 n 并且我希望它按升
  • 在 PubNub Swift 中访问 PNMessageResult

    请参阅此链接 http www pubnub com blog realtime ios apps getting started with swift and pubnub 基于以下功能我能够收到响应 func client client
  • Java MySQL 更新查询

    我收到错误 无法发出数据 这里是SSCCE package mysqltest import java awt import java awt event import javax swing import java applet Appl