DBMS里有多个数据库,每个库中又有多张表。
客户端有命令终端(DoS)、SQLyog、Java等。
Mysql数据库、普通表的本质仍然是文件。
表的一行称为一条记录,对应Java中的一个对象。
SQL语句的分类为
1、DDL数据定义语言 create 表、库
2、DML 数据 *** 作语言 insert、delete、update
3、DQL 数据查询语言 select
4、DCL 数据控制语言 管理数据库 grant revoke(撤销权限)
备份数据库命令行为:在DoS中执行
mysqldump -u 用户名 -p -B数据库1 数据库2 数据库n > 文件名.sql
恢复数据库:需要进入MySQL命令行再执行
Source 文件名.sql(路径名) 例如D:\back.sql
备份数据库中的表
mysqldump -u 用户名 -p -数据库 表1 表n > 文件名.sql(路径 例如:D:\back.sql)
JDBC是为了访问不同数据库提供了统一的接口,Java程序员可以使用JDBC连接任何提供了JDBC驱动程序的数据库系统,完成对数据库的 *** 作。不同的数据库厂商编写不同的实现类。这些实现类也叫做数据驱动jar包。
java程序不直接 *** 作数据库,只跟JDBC接口编程。不同的数据库厂商针对这些接口,实现不同的需求。相关类的接口主要在java.sql和javax.sql包中。
JDBC程序编写的步骤是
1、注册驱动 加载Driver类
2、获取连接 得到Connection
3、执行增删改查 发送SQL命令,给MySQL执行。
4、释放资源 关闭相关连接。
前置工作
首先需要在项目路径下,新建libs文件夹,用于存放jar包,然后右击jar包,选择最后一个选项。
import java.sql.Connection; import java.sql.DriverManager; import java.sql.Statement; public class JDBC_02 { // MySQL 8.0 以下版本 - JDBC 驱动名及数据库 URL static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; static final String DB_URL = "jdbc:mysql://localhost:3306/demo"; static final String USER = "root"; static final String PASS = "123456"; public static void main(String[] args) throws Exception{ Class.forName(JDBC_DRIVER);//注册驱动 mysql5之后的驱动jar包可以省略这个步骤 Connection conn = DriverManager.getConnection(DB_URL,USER,PASS); String sql = "insert into actor values(null,'刘德华','男','1970-11-11','110')"; Statement statement = conn.createStatement(); int i = statement.executeUpdate(sql);//i表示 如果是DML语句,则为影响的行数 if (i>0){ System.out.println("添加成功"); }else { System.out.println("添加失败"); } //关闭连接 statement.close(); conn.close(); } }
DriverManager数据库驱动管理对象 有两个功能1、注册驱动 2、获取数据库连接。Connection数据库连接对象 1、获取执行sql的statement对象 2、管理事务
开启事务 setAutoCommit 调用该方法,设置参数为false,即开启事务。
提交事务 commit方法
回滚事务 rollback方法Statement执行sql的对象 方法 execute()方法 执行任意sql语句,不常用。 executeUpdate()执行DML语句、DDL语句,执行DML语句返回一个int值,表示影响的行数。(常用于判断DML语句是否执行成功,大于0则成功)。 executeQuery()执行DQL查询语句,返回一个结果集对象。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)