史上最骚RPG制作第三期 java端数据的插入和查询

 简述

  在第一个场景我们输入好账号密码和昵称之后,点击开始游戏此时的游戏账号就应该插入到角色这个表里,本期的任务就是了解如何在java里插入数据以及查找数据。

 jdbc的一些驱动类

DriverManager类

  DriverManage类用来管理数据库中的所有驱动程序,是JDBC的管理层,作用于用户和驱动程序之间,跟踪可用的驱动程序,并在数据库的驱动之间建立连接,DriverManager类中的方法都是静态方法

getConnection(String URL,String user,String PassWord) 指定3个参数,分别是连接地址,用户名和密码类连接数据库
setLoginTimeout()                                     获取驱动程序视图登陆到某一数据库可以等待的最长时间,以秒为单位
Println(String message)                               将一条信息打印到当前JDBC日志流中

 Connection类  

  Connection 接口代表与特定的数据库的连接,要对数据库中的数据进行操作,首先要获取数据库连接,Connection实就像在应用程序与数据库之间开通了一条通道.可以通过DriverManager类的getConnection()方法获取Connection的实例。

createStatement()  创建Statement对象
PrepareStatement()  创建预处理对象PrepareStatement
isReadOnly()        查看当前Connection对象的读取模式是否是只读形式
SetReadOnly()       设置当前Connection对象的读写模式,默认是非只读模式
close()            立即释放此Connection对象的数据库和JDBC资源,而不是自动释放

 Statement类

  Statement接口用于创建向数据库中传递SQL语句的对象

execute(String sql)      执行静态的SELECT语句 可能返回多个数据集
executeQuery(String sql) 执行给定的Sql语句  返回单个ResultSet对象
clearBatch()             清空此Statement对象的当前SQL命令列表
executeUpdate()          执行指定的SQL语句 该语句可以为INSERT  UPDATE DELETE语句
close()                  释放Statement实例占用的数据库和JDBC资源

PreparedStatement 类

  PreparedStatement接口继承Statement,用于执行动态的SQL语句 ,通过PreparedStatement实例执行的SQL语句,将被编译并保存到PreparedStatement实例中,从而可以重复的执行该SQL语句

execute( )        在此PreparedStatement对象执行SQL语句,该语句可以是任何类型的SQL语句
executeQuery( )   在此preparedStatement对象中执行Sql查询语句,返回为查询数据集的对象
executeUpdate()   在此preparedStatement对象执行Sql语句,该SQL语句必须是一个INSERT UPDATE DELETE语句,或者是没有返回值得DLL语句
setbyte(int Pindex byte by) 将参数Pindex位置上设置为给定的byte参数by
setString(int Pindex String str)将参数Pindex位置上设置为给定的String参数值str
setDouble(int pindex Double dou)将参数Pindex位置上设置为给定的Double参数值dou
setInt(int Pindex int i) 将参数Pindex位置上设置为给定的int参数值i
setObject(int PIndex Ocject  obj)将参数Pindex位置上设置为给定的Object参数值Obj

ResultSet 类

  ResultSet接口类似于一个临时的数据表,用来暂时存放数据库查询操作获取到的数据集

getint()  以int形式获取当前行指定的列
getFloat()  以Float形式获取当前行指定的列
getDate()   以Date形式获取当前行指定的列
getBoolean() 以Boolean形式获取当前行指定的列
getString()   以String形式获取当前行指定的列
getObject()   以Object形式获取当前行指定的列
next( )         将指针向下移一行
updateInt()   用int值更新指定列
updateFloat()用float值更新指定列
updateLong()  用指定的long值更新指定的列
updateString()用指定的"String"值更新指定列
updateObejct() 用object值更新指定的列
updatenull()  将指定的列值修改为null
updateDate()  用指定的Date值更新指定的列
updateDouble() 用指定的DOuble值更新指定的列

scene1中角色数据的插入

  在我们scene1中填写好三个文本框后,点击开始游戏的瞬间,jdbc应当把三条数据插入到角色表。所以我们在按钮处设置事件驱动,用TextField的getText().trim()方法获取输入的数据,然后用PreparedStatement将这三个字符串作为参数,执行更新操作。

  

  

  

  可以看到我们的数据成功地插入进去了,需要注意不能插入相同账号的数据,因为主键是唯一的。

原文地址:https://www.cnblogs.com/qq2210446939/p/13039672.html