java数据库java 数据库操作

java数据库  时间:2021-09-04  阅读:()

java数据库

public static void main(String[] args) { try { Class.forName(.mysql.jdbc.Driver”);//加载mysql驱动 con=DriverManager.getConnection(“jdbc:mysql://127.0.0.1/student”, “ root”, "root");//第一个链接的url需要吧student改成你的库名,2个事账号,3是密码 PreparedStatement ps=null;//创建执行sql语句的对象 String sql="iinsert into Student(stuID,name,score) values(?,?,?); ps=con.prepareStatement(sql);//执行sql语句 ps.setString(1, "101");//对sql语句进行赋值 ps.setString(2, "niuniu"); ps.setInt(3, 90); ps.executeUpdate();//执行sql } catch (SQLException e) { e.printStackTrace(); } finally{ try { if(conn!=null) conn.close();//关闭连接 } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }

java数据库操作

java 数据库基本操作 1、java数据库操作基本流程 2、几个常用的重要技巧: 可滚动、更新的记录集 批量更新 事务处理 java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 1、取得数据库连接 1)用DriverManager取数据库连接 例子 String className,url,uid,pwd; className = "oracle.jdbc.driver.OracleDriver"; url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; uid = "system"; pwd = "manager"; Class.forName(className); = DriverManager.getConnection(url,uid,pwd); 2)用jndi(java的命名和目录服务)方式 例子 String jndi = "jdbc/db"; Context ctx = (Context) new InitialContext().lookup("p/env"); DataSource ds = (DataSource) ctx.lookup(jndi); = ds.getConnection(); 多用于jsp中 2、执行sql语句 1)用Statement来执行sql语句 String sql; Statement sm =.createStatement(); sm.executeQuery(sql); // 执行数据查询语句(select) sm.executeUpdate(sql); // 执行数据更新语句(delete、update、insert、drop等)statement.close(); 2)用PreparedStatement来执行sql语句 String sql; sql = "insert into user (id,name) values (?,?)"; PreparedStatement ps =.prepareStatement(sql); ps.setInt(1,xxx); ps.setString(2,xxx); ... ResultSet rs = ps.executeQuery(); // 查询 int c = ps.executeUpdate(); // 更新 3、处理执行结果 查询语句,返回记录集ResultSet 更新语句,返回数字,表示该更新影响的记录数 ResultSet的方法 1、next(),将游标往后移动一行,如果成功返回true;否则返回false 2、getInt("id")或getSting("name"),返回当前游标下某个字段的值 4、释放连接 .close(); 一般,先关闭ResultSet,然后关闭Statement(或者PreparedStatement);最后关闭Connection 可滚动、更新的记录集 1、创建可滚动、更新的Statement Statement sm =.createStatement(ResultSet.TYPE_SCROLL_ENSITIVE,ResultSet.CONCUR_READ_ONLY); 该Statement取得的ResultSet就是可滚动的 2、创建PreparedStatement时指定参数 PreparedStatemet ps =.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); ResultSet.absolute(9000); 批量更新 1、Statement Statement sm =.createStatement(); sm.addBatch(sql1); sm.addBatch(sql2); ... sm.executeBatch() 一个Statement对象,可以执行多个sql语句以后,批量更新。

这多个语句可以是delete、update、insert等或兼有 2、PreparedStatement PreparedStatement ps =.preparedStatement(sql); { ps.setXXX(1,xxx); ... ps.addBatch(); } ps.executeBatch(); 一个PreparedStatement,可以把一个sql语句,变换参数多次执行,一次更新。

事务的处理 1、关闭Connection的自动提交 .setAutoCommit(false); 2、执行一系列sql语句 要点:执行每一个新的sql语句前,上一次执行sql语句的Statement(或者PreparedStatemet)必须先close Statement sm ; sm =.createStatement(insert into user...); sm.executeUpdate(); sm.close(); sm =.createStatement("insert into corp...); sm.executeUpdate(); sm.close(); 3、提交 mit(); 4、如果发生异常,那么回滚 .rollback();

java 数据库操作

ResultSet 是一个类似游标方式的操作,在读取数据之前要去操作游标位置的. 使用ResultSet.next()方法会让游标移到下一个位置。

所以一定在每次获取数据前调用next()方法 //移动游标 if(res.next()){ str1=res.getInt(1); }

香港云服务器 1核 1G 29元/月 快云科技

快云科技: 12.12特惠推出全场VPS 7折购 续费同价 年付仅不到五折公司介绍:快云科技是成立于2020年的新进主机商,持有IDC/ICP等证件资质齐全主营产品有:香港弹性云服务器,美国vps和日本vps,香港物理机,国内高防物理机以及美国日本高防物理机产品特色:全配置均20M带宽,架构采用KVM虚拟化技术,全盘SSD硬盘,RAID10阵列, 国内回程三网CN2 GIA,平均延迟50ms以下。...

Raksmart VPS主机如何设置取消自动续费

今天有看到Raksmart账户中有一台VPS主机即将到期,这台机器之前是用来测试评测使用的。这里有不打算续费,这不面对万一导致被自动续费忘记,所以我还是取消自动续费设置。如果我们也有类似的问题,这里就演示截图设置Raksmart取消自动续费。这里我们可以看到上图,在对应VPS主机的【其余操作】中可以看到默认已经是不自动续费,所以我们也不要担心被自动续费的。当然,如果有被自动续费,我们确实不想续费的...

百纵科技(1399元/月)香港CN2站群232IP

湖南百纵科技有限公司是一家具有ISP ICP 电信增值许可证的正规公司,多年不断转型探索现已颇具规模,公司成立于2009年 通过多年经营积累目前已独具一格,公司主要经营有国内高防服务器,香港服务器,美国服务器,站群服务器,东南亚服务器租用,国内香港美国云服务器,以及全球专线业务!活动方案:主营:1、美国CN2云服务器,美国VPS,美国高防云主机,美国独立服务器,美国站群服务器,美国母机。2、香港C...

java数据库为你推荐
路由器怎么重新设置网络路由器复位后怎么重新设置java队列怎样用java代码实现一个队列win10发布win10发布者不受信任怎么办 win10如何取消阻止该发布者a8处理器苹果A7,A8,A9处理器有什么区别?文件损坏手机文件已损坏是什么回事?jsp源码jsp 中网站的首页源代码监控员工单位要装摄像头监控员工犯法吗sg什么意思机油,SG,SJ,SL,SM,SN代表什么意思1,越详细越好sd卡座我是一家手机生产厂的采购员,想知道按键开关、SD卡座什么厂家生产的好啊。知道的说说。谢谢暂停线程Java里如何暂停一个线程,达到一定条件后又唤醒线程?
liquidweb lunarpages 英文简历模板word 光棍节日志 服务器日志分析 湖南服务器托管 cpanel空间 架设服务器 佛山高防服务器 银盘服务是什么 申请网站 新加坡空间 卡巴斯基官网下载 卡巴斯基试用版下载 黑科云 博客域名 小夜博客 globalsign 卡巴斯基免费版 linux命令vi 更多