Java与mysql数据库相连接

下载 mysql-connector-java-xxxx-bin.jar
并导入到需要使用的项目工程中。

首先开启JDBC桥连接。
 Class.forName("com.mysql.jdbc.Driver");

然后调用DriverManager的getConnection方法, 获取到一个Connection的实例。
这个方法的参数总共有三个:
第一个参数为你的MySQL数据库地址+端口号+数据库名;
第二参数为数据库登录名;
第三个参数为登录密码。
在这里强调一点,也是我调了很久的一个问题。
就是在后边操作数据库的时候会乱码,要 在第一个参数数据库名称的最后加上编码方式 characterEncoding=utf8
 Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/bicycle?characterEncoding=utf8","root","21539822");

接下来 调用Connection的createStatement()方法获取Statement实例, 该实例可以完成对数据库增删改查等sql语句的执行。
Statement stmt = con.createStatement();

有了Statement后,便可以编写sql语句。

插入一条信息:
String sql="insert into card(name,id,sex,tel,card_id,card_inid,card_money,card_inmoney,money,addmoney,card_now,reason) values ('"+r1+"','"+r2+"','"+r3+"','"+r4+"','"+r5+"','"+r6+"','"+r7+"','"+r8+"','"+r9+"','"+"0"+"','"+"正常"+"','"+""+"');";

调用Statement的excuteUpdate()方法进行执行,将sql字符串传入。
stmt.executeUpdate(sql);


根据条件删除选中的行
PreparedStatement ps=con.prepareStatement("delete from card where card_id="+r5+"");

我们可以使用存储过程来完成
直接使用Connection的prepareStatement()方法
 PreparedStatement ps=con.prepareStatement("UPDATE card set card_now=? where card_id="+r5+"");

这里采用了通配符, 可以在一条语句中设置多个通配符, 注意一定要在执行sql语句前给通配符赋值。
ps.setString(1,"正常");<em style="background-color: inherit;"></em>

最后执行sql语句
ps.executeUpdate();

根据所给条件去数据库进行查询后会返回一个ResultSet结果集, 该结果集中有所有我们需要的数据。
ResultSet rs=stmt.executeQuery("SELECT*FROM card where card_id="+r5+"");

只需对其进行遍历取出值后再做相应的想要的操作就好。
比如:
while(rs.next()){
                               String rs1=rs.getString(1);
                               String rs2=rs.getString(2);
                               String rs3=rs.getString(3);
                               String rs4=rs.getString(4);
                               String rs5=rs.getString(5);
                               String rs6=rs.getString(6);
                               String rs7=rs.getString(7);
                               String rs8=rs.getString(8);
                               String rs9=rs.getString(9);
                               String rs10=rs.getString(10);
                               String rs11=rs.getString(11);
                               String rs12=rs.getString(12);
                    }


使用while循环,当结果集中有下一行的话,将值依次取出,其中getString()中的数字即为你想要取得的列。

这样增删改查的方法就都有了
最后注意一定要释放PreparedStatement和Statement所连接的数据库及JDBC资源
 ps.close();
 stmt.close();

然后 是关闭与数据库的连接
con.close();




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值