Tools: mysql-connector-java-5.1.48.jar, mysql version 5.6.19, android studio built simulator
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 ( "a successful connection 1" ) }catch (e:Exception){ e.printStackTrace () println ( "Connection failed" ) } try{ Thread({ DriverManager.getConnection(url,user,psd) println ( "a successful connection 2" ) }).start() }catch (e:Exception) { e.printStackTrace () the println ( "connection failed 2" ) } } }
Note: android studio built simulator must be set to the ip address 10.0.2.2
Reference https://blog.csdn.net/qq_37141773/article/details/84326163 connection problems
2.PreparedStatement
【Ready to work】
In the data table to establish the test
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 ( "a successful connection 1" ) }catch (e:Exception){ e.printStackTrace () println ( "Connection failed" ) } 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 () the println ( "connection failed 2" ) } } }
<2> Util class
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 ( "Database connection was successful ..." ) } 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 ( "Operation successful data ..." ) }).start() } catch (e: Exception) { e.printStackTrace () } } }