Java调用Mysql

Java调用Mysql

连接步骤

  • 添加mysql官方的java接口jar包,在后面详细介绍

  • 连接Database

Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/javabook", "USERNAME", "PASSWORD");
  • 创建Database命令语句
Statement statement = connection.createStatement();
  • 执行命令语句
  statement.executeUpdate("create table Temp (col1 char(5), col2 char(5))");
  • 获取请求query的结果集resultSet
  ResultSet resultSet = statement.executeQuery
    ("select firstName, mi, lastName from Student where lastName " + " = 'Smith'");

resultSet的默认位置是null,以下代码打印所有数据信息

 while (resultSet.next())
      System.out.println(resultSet.getString(1) + " " + resultSet.getString(2) + " " + resultSet.getString(3)); 

也可以通过getString(“firstName”)获得firstName的值

完整程序代码如下:

public class DatabaseTest {
        public static void main(String[] argv)
            throws SQLException, ClassNotFoundException {
            Class.forName("com.mysql.jdbc.Driver");
            System.out.println("Driver loaded");

            Connection connection = DriverManager.getConnection(
                    "jdbc:mysql://localhost/Javadata", "user1", "12345"
            );
            System.out.println("connected");

            Statement statement = connection.createStatement();

            ResultSet resultSet = statement.executeQuery(
                    "select * from Test order by age desc"
            );

            while(resultSet.next())
            {
                System.out.println(resultSet.getString("name") + " " +  resultSet.getString("age"));

            }

            connection.close();
        }

    }

注意
每一个单独语句会单独提交到数据库中,如果要分组进行提交的话,可以采用setAutoCommit(false)方法,并在一组statement语句的句末调用commit()方法提交整个组,而rollback()则撤销该组的提交。
rollback()可用于读取某个数据失败而导致整项不该修改的数据的修改。

使用带参数的SQL语句

不带参数的SQL语句:

String queryString = "select firstName, mi, " +
         "lastName, title, grade from Student, Enrollment, Course " +
         "where Student.ssn = '" + _ssn_ + "' and Enrollment.courseId "
         + "= '" + _courseId_ +
         "' and Enrollment.courseId = Course.courseId " +
         " and Enrollment.ssn = Student.ssn";
         ResultSet rset = stmt.executeQuery(queryString)

调用connection.prepareStatement(),采用带参数的SQL语句(使用?作为参数):

preparedStatement = connection.prepareStatement(queryString);
    String queryString = "select firstName, mi, " +
         "lastName, title, grade from Student, Enrollment, Course " +
         "where Student.ssn = ? and Enrollment.courseId = ? " +
         "and Enrollment.courseId = Course.courseId";
    preparedStatement.setString(1, ssn);
    preparedStatement.setString(2, courseId);
    ResultSet rset = preparedStatement.executeQuery();

IntelliJ中导入jar包

我使用的是Android Studio,但AS基于IJ开发,所以大同小异,步骤如下:

在Mysql官网下载mysql-connector-java-5.1.43.tar.gz
导入IntelliJ IDE中:
1. 点击 File -> Project Structure(快捷键 Ctrl + Alt + Shift + s),点击Project Structure界面左侧的modules。(在这里我的module是my_test)
2. 在 “Dependencies” 标签界面下,点击右边绿色的 “+”号,选择第一个选项“Jar dependency”,选择相应的jar包,点“OK”,jar包添加成功。
这里写图片描述
3. 假设包中有mysql.jdbc.Driver类,则在该module下,使用com.mysql.jdbc.Driver即可使用该类

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值