statement-用Statement可以操作数据库PrepareStatement不行吗,为什么,看如下代码。

问题描述

用Statement可以操作数据库PrepareStatement不行吗,为什么,看如下代码。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class JdbeTest {
public static void main(String[] args) throws Exception{

  Class.forName(""com.mysql.jdbc.Driver"");Connection conn = DriverManager.getConnection(""jdbc:mysql://127.0.0.1:3306/mydb""root""362324FJF"");PreparedStatement stat = conn.prepareStatement(""insert into user(idsalaryage) values(???)"");stat.setInt(1 1);stat.setDouble(2 100);stat.setInt(3 12);ResultSet rs = stat.executeQuery(""select * from user"");while(rs.next()){        System.out.println(rs.getObject(""id""));        System.out.println(rs.getObject(""salary""));        System.out.println(rs.getObject(""age""));    }    rs.close();    stat.close();    conn.close();

}

}

 import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class JdbeTest {  public static void main(String[] args) throws Exception{      Class.forName(""com.mysql.jdbc.Driver"");        Connection conn = DriverManager.getConnection(""jdbc:mysql://127.0.0.1:3306/mydb""root""362324FJF"");        Statement stat = conn.createStatement();        stat.executeUpdate(""insert into user(idsalaryage) values(502030)"");        ResultSet rs = stat.executeQuery(""select * from user"");        while(rs.next()){            System.out.println(rs.getObject(""id""));            System.out.println(rs.getObject(""salary""));            System.out.println(rs.getObject(""age""));        }        rs.close();        stat.close();        conn.close();  }}

解决方案

 stat.setInt(1 1);stat.setDouble(2 100);stat.setInt(3 12);stat.executeUpdate();//增加这句

解决方案二:
你是说你用PreparedStatement没有插入成功是吗?

你的第一段代码中没有执行真正的插入操作,你虽然设置了参数,但是你使用的是查询方法,跟你前面设置的没有关系,你设置完毕后需要执行:
stat.executeUpdate();
执行这句成功后才能完成你前面定义的sql语句。

时间: 2024-10-08 13:52:44

statement-用Statement可以操作数据库PrepareStatement不行吗,为什么,看如下代码。的相关文章

utf-8-c# 操作xml文件进行修改 请看下面代码

问题描述 c# 操作xml文件进行修改 请看下面代码 这是一个app.xml文件中的 <?xml version="1.0" encoding="utf-8"?> <appSettings> <appSetting key="张三" value="1" notes="上次读取到的表面位移模块当前月数据表的记录DataID字段值" /> <appSetting key

PHP操作数据库 动态创建字段

PHP操作数据库时自动创建字段,如下代码: <html>  <head>  <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />  <title>动态创建字段 - www.cxybl.com</title>  <style type="text/css">  <!--  .STYLE

mysql Connector C++ 操作数据库 vs2012

最近想写一个应用程序,要连接和操作mysql数据库,以前只是用c++ builder 操作过mysql数据库,那是用控件操作的,感觉比较弱智,但是c++ builder vcl控件感觉在多线程里比较坑,所以用vs2012做了. c++连接mysql有两种方式,1是原始的方法,2是用 Connector c++ .Connector c++  只是一种封装,使之更加方便.本方只记下关于 Connector c++ 操作数据库. 想写一个demo 测试一下. mysql connector c++

一个操作数据库的Java Bean……

数据|数据库 一个操作数据库的Java Bean,有兴趣的朋友看一下吧~~ package dbconnect; import java.sql.*; public class sqlconnection { String sDbDriver = "sun.jdbc.odbc.JdbcOdbcDriver"; String sConnStr = "jdbc:odbc:sqlconnect"; // sqlconnect 数据源名称: private Connecti

MyEclipse中操作数据库的问题

问题描述 MyEclipse中操作数据库的问题 自己写了一个小程序,联系数据库操作的,出现java.lang.ClassNotFoundException: oracle.jdbc.OracleDriver at java.net.URLClassLoader$1.run(URLClassLoader.java:366) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessControl

java中文件读取文件操作数据库

问题描述 java中文件读取文件操作数据库 给个例子 谢谢 解决方案 连接数据库:public class DBConnect {public Connection getConnect(String driver, String url, String user, String pwd) {Connection conn = null;try {Class.forName(driver);conn = DriverManager.getConnection(url, user, pwd);}

JDBC操作数据库的增加、删除、更新、查找实例分析_java

本文实例讲述了JDBC操作数据库的增加.删除.更新.查找方法.分享给大家供大家参考,具体如下: package cn.com.JDBC; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class CRUD { public static void main(String[] args) throws SQL

Java中使用JDBC操作数据库简单实例_java

好久没有编写有关数据库应用程序啦,这里回顾一下java JDBC. 1.使用Java JDBC操作数据库一般需要6步: (1)建立JDBC桥接器,加载数据库驱动: (2)连接数据库,获得Connection对象(使用数据库连接地址,用户名,密码): (3)获得数据库Statement对象: (4)执行数据库操作: (5)读取结果: (6)关闭数据库连接: 2.使用Java JDBC操作数据库(mysql)代码: 连接mysql数据库,需要导入mysql数据库jar包,本代码使用mysql-con

SQLServer 2008以上误操作数据库恢复方法——日志尾部备份

原文:SQLServer 2008以上误操作数据库恢复方法--日志尾部备份 原文出处:http://blog.csdn.net/dba_huangzj/article/details/8491327 问题:          经常看到有人误删数据,或者误操作,特别是update和delete的时候没有加where,然后就喊爹喊娘了.人非圣贤孰能无过,做错可以理解,但不能纵容,这个以后再说,现在先来解决问题.         遇到这种情况,一般都是没有做备份,不然也不会来发问了.首先要冷静,否则会