2021-02-22

mysql和sql server使用java语言连接,详细过程

1,安装mysql
链接:https://pan.baidu.com/s/1vP-D71PmMsXhLwO8y2lL9A 提取码:n4mt
2,配置mysql
https://www.cnblogs.com/winton-nfs/p/11524007.html
跟着步骤一步步来
3,配置完成后可能出现的问题及解决办法

虽然过程不是十分复杂但是没有专人指导,初学者还是遇到很多无法解决的问题,我安装配置用了三四天,差点搞崩溃,为了让你们少走些弯路,所以把经验分享一下

1,我配置完成后,连接一直显示服务无法启动,多次尝试后,发现将my.ini 文件删除后能够正常启动服务
在这里插入图片描述
2,安装好mysql后,可以安装一下Navicat,这样以后操作数据库会方便很多。接着我尝试使用java连接数据库,结果各种报错。
1,首先,是驱动问题,还有jar包。
链接:https://pan.baidu.com/s/1wxCk0NAgIyrZ6XDlo2Beow
提取码:pzsr

jar包拿走不谢
com.mysql.jdbc.Driver,这是我开始写的驱动问题,但是报错了,我上网查了一下说是版本的问题,我是mysql8.23所以要使用com.mysql.cj.jdbc.Driver,这个问题算是解决了。

2,接着运行,开始时区问题。

在url后面加上?serverTimezone=GMT%2B8,这个问题也结局了。

3,接着运行

Access denied for user ‘root’@‘localhost’ (using password:
YES),到这里我差点放弃了。网上说是我的Navicat版本和mysql不匹配,我搞了半天,重新下载新版的Navicat但是并没有解决问题, 直接说解决办法。 我的是因为url格式不正确,为了尽快 解决这个问题,我将用户名和密码从url提了出来。
Connection conn= DriverManager.getConnection(url,“root”,“1236”); 这个问题也解决了。

在这里插入图片描述

4,代码


```python
package com.company;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
//&characterEncoding=utf-8
public class myaql1 {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        Class.forName("com.mysql.cj.jdbc.Driver");
        String url="jdbc:mysql://localhost:3306/stu?serverTimezone=GMT%2B8";
         Connection conn= DriverManager.getConnection(url,"root","1236");

        Statement stmt=conn.createStatement();
        System.out.println("连接成功!");
    }
}

5,SqlServer思路是一样的我把jar包和代码给你们
链接:https://pan.baidu.com/s/1m5r2_tb7Hel9ORHDu8vFrQ
提取码:2czt

    //创建conn
    try {
        //使用驱动管理器DriverManager,创建一个连接对象conn
        conn=DriverManager.getConnection(url, user, password);

        //使用conn,创建语句对象st
        st=conn.createStatement();

        //使用st,创建结果集对象rs
        result=st.executeUpdate(sql);

        System.out.println("数据删除成功!");

    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        System.out.println("数据删除失败!");
    }finally {
        //如果conn不为null,则关闭它
        if(conn!=null) {
            try {
                conn.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
    System.out.println("Finished...");
}
/**
 * 更新数据
 */
public static void update() {
    //将驱动类全名从硬盘加载到内存
    try {
        Class.forName(driverClassName);
    } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        //e.printStackTrace();
        System.out.println("类全名【"+driverClassName+"】没有找到。");
    }

    //三大对象
    Connection conn=null;
    Statement st=null;
    ResultSet rs=null;

    //数据赋值
    String subName="C++";
    int claHour=250;
    int graId=3;

    //需要执行的sql语句
    String sql="update Subject set SubjectName='C--' where SubjectName='C++'";
    int result=0;

    //创建conn
    try {
        //使用驱动管理器DriverManager,创建一个连接对象conn
        conn=DriverManager.getConnection(url, user, password);

        //使用conn,创建语句对象st
        st=conn.createStatement();

        //使用st,创建结果集对象rs
        result=st.executeUpdate(sql);

        System.out.println("数据删除成功!");

    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        System.out.println("数据删除失败!");
    }finally {
        //如果conn不为null,则关闭它
        if(conn!=null) {
            try {
                conn.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
    System.out.println("Finished...");
}

}


6,

> 我基本上把所有上出现的问题搞了一个遍,我也是服了,这里面还有一些其他的小细节比如到jar包,什么的,不要怕麻烦,多搞几次就熟悉了,从入门到放弃的第十四天。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值