码迷,mamicode.com
首页 > 移动开发 > 详细

数据库: Android使用JDBC连接数据库实现增 删 该 查 操作(5.0版本)

时间:2020-01-14 09:55:03      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:iframe   run   就是   mys   用户名   creates   jdbc连接数据库   编码方式   har   

 

 

 

前言

  上一节的代码没有测试通过,暂时没有找到问题,这节咱用5.0的jar包

  技术图片

 

 

  配置数据库,导入jar包参考上一节(导入这节的jar包)

 

准备好测试的数据库

  IP: 47.92.31.46

  用户名: yang

  密码:    11223344.

  数据库名字 :  databasetest

  表格:  userinfo

  技术图片

 

  这是我云端电脑安装的数据库,大家都可以连接测试

  我设置了权限,只可以增删改查数据

加载mysql驱动

  Class.forName("com.mysql.jdbc.Driver").newInstance();

  

  技术图片

 

 

 

连接数据库

  

            new Thread(new Runnable() {
                @Override
                public void run() {
                    try{
                        Connection connection = DriverManager.getConnection("jdbc:mysql://47.92.31.46/databasetest?" +
                                "user=yang&password=11223344.&characterEncoding=utf-8");
                        if (connection!=null) {
                            Log.e("MainActivity", "Connectd Mysql");
                        }
                    }catch (SQLException e){

                    }
                }
            }).start();

 

 

 

 

因为是网络通信,所以加上任务,防止超时连接阻塞造成卡机

 


Connection connection = DriverManager.getConnection("jdbc:mysql://47.92.31.46/databasetest?" +
        "user=yang&password=11223344.&characterEncoding=utf-8");

 


47.92.31.46 :IP地址(自己电脑的IP地址)
databasetest   :数据库名字
user=yang     :设置连接的数据库的用户名
password=11223344. :设置连接的数据库的密码
characterEncoding=utf-8  :编码方式
 

插入数据(第一种)

 

  一,插入数据,id是1,用户名是yang 密码是11223344

 

  "insert into userinfo "+ " values(1,"+"‘"+ "yang" +"‘"+ "," +"‘"+"11223344"+"‘"+")";

  insert into userinfo : 插入数据到 userinfo 表格 

  1 :id的值,自动递增

  yang : 用户名

  11223344 :密码

  注:一般插入字符串型数据需要在数据两边加   ‘    ‘

  也就是  ‘数据‘

  

                            String sql = "insert into userinfo "+ " values(1,"+""+ "yang" +""+ "," +""+"11223344"+""+")";//第一种
                            Statement statement = connection.createStatement();
                            statement.execute(sql);//提交

技术图片

 

 

  

 

 

 

运行测试

  技术图片

 

 

 

插入数据(第二种)

  

String sql = "insert into userinfo "+ " values(NULL,"+""+ "yangyang" +""+ "," +""+"11223344"+""+")";

 

 

 

 和上面相比 value(NULL.....)

设置第一个字段是空,意思是不填写第一个字段(默认就会自动递增)

技术图片

 

 

 

 

技术图片

 

 

 

 

运行测试

 

  技术图片

 

 

 

 

 

 

总结上两种插入数据方式

  values里面的值依次填到表格中,如果数据不够,后面的就不插入数据

  技术图片

 

 

 

 

 

 

插入数据(第三种)

  

String sql = "insert into userinfo (username,password)"+ "values(" +""+ "yangyang" +""+ "," +""+"11111111"+""+")";

 

(username,password) 后面的values里面的数据对应插到哪个字段里面
yangyang 插入到 username 字段里面
11111111 插入到 password 字段里面
技术图片

 


运行测试


  技术图片

 

删除数据

String sql = "delete from userinfo "+" where "+"username = "+""+"yang" +"";

删除 userinfo表格中 username字段中是 yang的数据

意思就是删除,下面这条数据

技术图片

 

 

技术图片

 

 

 

 

运行测试

 

  技术图片

 

 

 

 

 

 

 

 

 

String sql = "delete from userinfo "+" where "+"username = "+""+"yangyang" +""+ " and " +"password ="+""+"00000000"+"";

删除 userinfo表格中 username字段中是 yangyang,同时password字段中是 00000000 的数据

 

技术图片

 

 

 

 

其实就是删除这个

 

  技术图片

 

 

 

 

运行测试

 

  技术图片

 

 

 

 

 

修改数据

  

String sql = "update userinfo set password="+""+"888888"+"" +"where username="+""+"yangyang"+"";

 

 

 

 找到userinfo表格中username字段值是yangyang的

然后把 password字段的值修改为 888888

其实就是把11111111修改为888888

技术图片

 

 

 

 

技术图片

 

 

 

 

运行测试

 

  技术图片

 

 

 

 

当然也可以直接设置

String sql = "update userinfo set password="+""+"888888"+"";

 

 

 

 

 

 

 

 

查询数据

                            String sql = "select *from userinfo";//查询表格中的所有数据
                            Statement statement = connection.createStatement();
                            ResultSet resultSet =  statement.executeQuery(sql);
                            if (resultSet != null) {
                                try{
                                    while(resultSet.next()) {
                                        String username = resultSet.getString("username");
                                        String password = resultSet.getString("password");
                                        Log.e("查询的数据", username+"   "+password);
                                    }
                                }catch (Exception e){
                                }
                            }

 

 

 

 测试

  技术图片

 

 

 

 为直观看到下面的测试增加一个用户名和密码

技术图片

 

 

 

 

技术图片

 

 

 

 

 

 

 

 

查询表格中的所有username字段的值
                            String sql = "select username from userinfo";//查询表格中的所有username字段的值
                            Statement statement = connection.createStatement();
                            ResultSet resultSet =  statement.executeQuery(sql);
                            if (resultSet != null) {
                                try{
                                    while(resultSet.next()) {
                                        String username = resultSet.getString("username");
                                        //String password = resultSet.getString("password");
                                        //Log.e("查询的数据", username+"   "+password);
                                        Log.e("查询的数据", username);
                                    }
                                }catch (Exception e){
                                }
                            }

 

 运行测试

  技术图片

 

 

 

 

 

 

 

查询表格中的密码是666666的用户名

 

                            String sql = "select username from userinfo where password = 666666";//查询表格中的密码是666666的用户名
                            Statement statement = connection.createStatement();
                            ResultSet resultSet =  statement.executeQuery(sql);
                            if (resultSet != null) {
                                try{
                                    while(resultSet.next()) {
                                        String username = resultSet.getString("username");
                                        //String password = resultSet.getString("password");
                                        //Log.e("查询的数据", username+"   "+password);
                                        Log.e("查询的数据", username);
                                    }
                                }catch (Exception e){
                                }
                            }

 

运行测试

  技术图片

 

 

 

//查询表格中password是666666的所有数据

                            String sql = "select *from userinfo where password = 666666";//查询表格中password是666666的所有用户信息
                            Statement statement = connection.createStatement();
                            ResultSet resultSet =  statement.executeQuery(sql);
                            if (resultSet != null) {
                                try{
                                    while(resultSet.next()) {
                                        String username = resultSet.getString("username");
                                        String password = resultSet.getString("password");
                                        Log.e("查询的数据", username+"   "+password);
                                    }
                                }catch (Exception e){
                                }
                            }
                        }

 

运行测试

  技术图片

数据库: Android使用JDBC连接数据库实现增 删 该 查 操作(5.0版本)

标签:iframe   run   就是   mys   用户名   creates   jdbc连接数据库   编码方式   har   

原文地址:https://www.cnblogs.com/yangfengwu/p/12190119.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!