CREATEDATABASE scalademo
USE scalademo
CREATETABLE student(
id INT(10)PRIMARYKEYAUTO_INCREMENT,
NAME VARCHAR(32),
age INT(10))INSERTINTO student(NAME,age)VALUES("zs",18),("ls",21)SELECT*FROM student
然后在IDEA里写scala语句就ok
package mysqlstu
import java.sql.{Connection, DriverManager, ResultSet}object MysqlDemo {//连接属性privateval driver="com.mysql.jdbc.Driver"privateval url="jdbc:mysql://192.168.198.201:3306/scalademo"privateval username="root"privateval password="ok"privatevar connection:Connection=null//连接方法def getConnection():Unit={
Class.forName(driver)
connection = DriverManager.getConnection(url,username,password)}//插入数据def insert(uname:String,uage:Int):Int={//第一种方法:变量名传值//val inserSqlString="insert into student(name,age) values(\""+uname+"\","+uage+")" //因为uname是string类型所以用转义符保留双引号// val i = connection.createStatement().executeUpdate(inserSqlString)//第二种方法:用?传值val inserSqlString="insert into student(name,age) values(?,?)"val statement = connection.prepareStatement(inserSqlString)
statement.setString(1,uname)
statement.setInt(2,uage)val i=statement.executeUpdate()
i
}//查询数据def select():Unit={val selectStrSql="select id,name,age from student"val rs:ResultSet = connection.createStatement().executeQuery(selectStrSql)while(rs.next()){var id=rs.getInt("id")var name=rs.getString("name")var age=rs.getInt("age")
println(id+"\t"+name+"\t"+age)}}//主函数def main(args: Array[String]):Unit={
getConnection()
println(connection)
println(if(insert("zhu",23)!=null)"数据插入成功"else"数据插入失败")
select()}}