Scala 原生操作MySQL
Scala 操作MySQL
本地之前安装过MySQL
启动: mysql.server start
停止: mysql.setver stop
登录: mysql -u root ; 登录root用户。
选择一个database : use erwa
查看所有的database: show databases修改密码:格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:mysqladmin -uroot -p123456 password 123
因为换电脑了,之前是在mac上安装的,现在在windows上重新装一个
本地通过Scala操作数据库#
直接上代码
用的sbt,需要导入mysql-con包
libraryDependencies += "mysql" % "mysql-connector-java" % "8.0.25"
package com.erwa.test
import java.sql.{ Connection, DriverManager }
/**
* 学习通过Scala操作jdbc连接mysql数据库
*/
object operatorMysql extends App {
// 访问本地MySQL服务器,通过3306端口访问mysql数据库
val url = "jdbc:mysql://localhost:3306/db?useUnicode=true&characterEncoding=utf-8&useSSL=false"
//驱动名称
val driver = "com.mysql.cj.jdbc.Driver"
//用户名
val username = "root"
//密码
val password = "123456"
//初始化数据连接
var connection: Connection = _
try {
//注册Driver
Class.forName(driver)
//得到连接
connection = DriverManager.getConnection(url, username, password)
val statement = connection.createStatement
//执行查询语句,并返回结果
val rs = statement.executeQuery("select id, name from school")
//打印返回结果
while (rs.next) {
val id = rs.getString("id")
val name = rs.getString("name")
// println(name+"\t"+num)
println("id = %s, name = %s".format(id, name))
}
println("查询数据完成!")
// 执行插入操作
// val rs2 = statement.executeUpdate(" INSERT INTO school (id, name) VALUES (3, '学校3')")
// println("插入数据完成")
// // 执行更新操作
// val rs3 = statement.executeUpdate("UPDATE school SET id = 4, name = '学校4' where id = 3")
// println("更新数据完成!")
//
// // 执行删除操作
val rs4 = statement.executeUpdate(" delete from school where id = 4 ")
println("删除数据完成!")
println("-----执行完操作之后-----")
val rs1 = statement.executeQuery("select id, name from school")
//打印返回结果
while (rs1.next) {
val id = rs1.getString("id")
val name = rs1.getString("name")
// println(name+"\t"+num)
println("id = %s, name = %s".format(id, name))
}
println("查询数据完成!")
} catch {
case e: Exception => e.printStackTrace()
}
//关闭连接,释放资源
connection.close()
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!