工具:mysql-connector-java-5.1.48.jar,mysql version 5.6.19,android studio内置模拟器

1.connection

import java.sql.DriverManager

interface Connection {
fun init(){
var driver="com.mysql.jdbc.Driver"
var url="jdbc:mysql://10.0.2.2:3306/test"
var user="root"
var psd="rs123456"
try {
Class.forName(driver).newInstance()
println("连接成功1")
}catch (e:Exception){
e.printStackTrace()
println("连接失败")
} try{
Thread({
DriverManager.getConnection(url,user,psd)
println("连接成功2")
}).start() }catch (e:Exception) {
e.printStackTrace()
println("连接失败2")
} }
}

注意事项:android studio内置模拟器ip地址一定要设置为10.0.2.2

连接问题参考https://blog.csdn.net/qq_37141773/article/details/84326163

2.PreparedStatement

【准备工作】

在数据test中建立table

use test;

create table stuinfo(id int,name varchar(20));

<1>

import java.lang.Exception
import java.sql.Driver
import java.sql.DriverManager
import java.sql.PreparedStatement interface Connection {
fun init(){
var driver="com.mysql.jdbc.Driver"
var url="jdbc:mysql://10.0.2.2:3306/test"
var user="root"
var psd="rs123456"
try {
Class.forName(driver).newInstance()
println("连接成功1")
}catch (e:Exception){
e.printStackTrace()
println("连接失败")
} try{
Thread({
val conn=DriverManager.getConnection(url,user,psd) var sql:String="insert into stuinfo(id,name)values(?,?)"
val ps:PreparedStatement=conn.prepareStatement(sql)
ps.setString(1,"3")
ps.setString(2,"vocus")
ps.execute()
}).start() }catch (e:Exception) {
e.printStackTrace()
println("连接失败2")
} }
}

<2>Util类

class DbUtil {
fun updateDatabase(sql:String,vararg args:Any) {
var driver = "com.mysql.jdbc.Driver"
var url = "jdbc:mysql://10.0.2.2:3306/test"
var user = "root"
var psd = "rs123456" //var sql = "insert into stuinfo(id,name) values(?,?)"
try {
Class.forName(driver).newInstance()
println("数据库连接成功...")
} catch (e: Exception) {
e.printStackTrace()
}
try {
Thread({
var conn = DriverManager.getConnection(url, user, psd)
var ps = conn!!.prepareStatement(sql)
for(i in 0 until args.size){
ps.setObject(i+1,args[i])
}
ps.execute()
println("操作数据成功...")
}).start() } catch (e: Exception) {
e.printStackTrace()
}
}
}

增加查询

    var conn:java.sql.Connection?=null
var driver = "com.mysql.jdbc.Driver"
var url = "jdbc:mysql://10.0.2.2:3306/test"
var user = "root"
var psd = "rs123456" fun connection():java.sql.Connection?{ //var sql = "insert into stuinfo(id,name) values(?,?)"
try {
Class.forName(driver).newInstance()
println("数据库连接成功...")
} catch (e: Exception) {
e.printStackTrace()
}
try {
conn = DriverManager.getConnection(url, user, psd)
}catch (e:Exception){
e.printStackTrace()
}
return conn
} fun updateDatabase(sql:String,vararg args:Any) {
try {
Thread({
var conn = connection()
var ps = conn!!.prepareStatement(sql)
for(i in 0 until args.size){
ps.setObject(i+1,args[i])
}
ps.execute()
println("操作数据成功...")
}).start() } catch (e: Exception) {
e.printStackTrace()
}
} fun queryDatabase(sql:String,vararg args:Any){
try{
Thread({
var conn=connection()
var ps=conn!!.prepareStatement(sql)
for(i in 0 until args.size){
ps.setObject(i+1,args[i])
}
var resultSet=ps.executeQuery()
var rsmd=resultSet.getMetaData()
var columns=rsmd.columnCount
println("执行查询成功...以下为返回结果...")
if(resultSet.next()) {
for (i in 0 until columns) {
var value=resultSet.getObject(i+1)
var columnName=rsmd.getColumnName(i+1)
println("${columnName},${value}")
}
} }).start()
}catch (e:Exception){
e.printStackTrace()
} }
}

android studio使用JDBC访问mysql数据库(Kotlin方法)的更多相关文章

  1. 在Eclipse中使用JDBC访问MySQL数据库的配置方法

    在Eclipse中使用JDBC访问MySQL数据库的配置方法 分类: DATABASE 数据结构与算法2009-10-10 16:37 5313人阅读 评论(10) 收藏 举报 jdbcmysql数据 ...

  2. C#访问MySQL数据库的方法

    C#访问MySQL数据库的方法 (1)首先需要下载C#访问MySQL数据库的ADO.NET驱动程序 下载地址为: http://dev.mysql.com/downloads/connector/ne ...

  3. 使用JDBC对数据库进行查询的前期准备工作,以及简单的JDBC访问MySQL数据库(Mac)

    首先JDBC的前期数据库数据准备: 1,打开链接好MySQL的Workbench软件,新建一个数据库: 2.然后打开数据库对应的代码编辑窗口,建立表和插入数据记录: 3.然后是打开关于javaWeb编 ...

  4. 【转】Java 通过JDBC连接Mysql数据库的方法和实例【图文说明】

    JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...

  5. Java 通过JDBC连接Mysql数据库的方法和实例

    JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...

  6. Java 通过JDBC连接Mysql数据库的方法和实例【图文说明】

    JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...

  7. Spring Boot入门(五):使用JDBC访问MySql数据库

    本系列博客记录自己学习Spring Boot的历程,如帮助到你,不胜荣幸,如有错误,欢迎指正! 在程序开发的过程中,操作数据库是必不可少的部分,前面几篇博客中,也一直未涉及到数据库的操作,本篇博客 就 ...

  8. 浅谈JDBC访问MySQL数据库

    经过我自己的总结后,其实很简单,只需要记住四个步骤,JDBC这部分的学习就可以掌握差不多了,请多多指教. 加载注册JDBC驱动: 打开数据库: 创建向数据库发送sql语句的statement: Res ...

  9. 【Java/MySql】使用JDBC访问MySql数据库的Maven工程

    下载链接:https://files.cnblogs.com/files/xiandedanteng/FindNotnullColumns20191102-1.rar pom.xml里写: <p ...

随机推荐

  1. DevOps - 实施原则

    章节 DevOps – 为什么 DevOps – 与传统方式区别 DevOps – 优势 DevOps – 不适用 DevOps – 生命周期 DevOps – 与敏捷方法区别 DevOps – 实施 ...

  2. flask 常用数据模型模板

    1.一对多关系模型 示例代码 class Role(db.Model): """角色表""" __tablename__ = 'roles' ...

  3. 对上一篇Logstash的补充

    主要补充内容: 1.同步多表 2.配置的参数个别说明 3.elasticsearch的"_id"如果有相同的,那么会覆盖掉,相同"_id"的数据只会剩下最后一条 ...

  4. 对状态字的理解 尤其是 首次检测位“/FC”的想法

    状态字 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0               BR CC1 CC0 OV OS OR STA RLO /FC 问题1 关于首次检测位& ...

  5. 讨论(xia che ≖‿≖✧)magic number——1000000007

    为什么要对1000000007取模(取余) 来看这篇博客的基本上都是和我一样脑子有坑的人,要么就是看了我某篇大数阶乘,大数的排列组合等类似博客被忽悠过来的.我刚刚说到那些类型的题目一般都要求将输出结果 ...

  6. POJ 2823:Sliding Window 单调队列

    Sliding Window Time Limit: 12000MS   Memory Limit: 65536K Total Submissions: 48930   Accepted: 14130 ...

  7. SYSTEMTIME 获取日期之差

    #include <windows.h> #include <stdio.h> #include <stdlib.h> #include <string.h& ...

  8. CSS - flex 垂直水平居中

    display: flex; justify-content: center; /* 水平居中 */ align-items: center; /* 垂直居中 */

  9. 使用pip install jupyter报错处理办法及修改Jupyter默认加载路径的方法

    1.配置python环境之后想使用Jupyter,网上查看可以使用pip install Jupyter安装,执行命令行后正常安装,安装到一半以后报错,如图1.2 图1 图2 2.发现是安装过程中安装 ...

  10. Django——优美的Path()函数

    path( )作用:解析URL地址 path( ) 标准语法: (<>为必须的参数,[]为可选参数) path(<route>, <view>, [name=Non ...