如何将Java连接到Microsoft SQL Server

xxls0lw8  于 2023-11-15  发布在  Java
关注(0)|答案(3)|浏览(117)

我创建了一个Java应用程序来连接MySQL数据库。

public class Connection {

    public static Connection getConexao() throws SQLException {
        try {
            Class.forName("com.mysql.jdbc.Driver");
            //System.out.println("Conectado");
            return DriverManager.getConnection("jdbc:mysql://localhost/world","root", "rootadmin");
        } catch (ClassNotFoundException e) {
            throw new SQLException(e.getMessage());
        }
    }
}

字符串
现在,我需要将连接从MySQL更改为 Microsoft SQL Server 2012
有人能帮我更改到数据库的连接吗?
非常感谢大家。

c2e8gylq

c2e8gylq1#

首先,你需要MS SQL Server的JDBC驱动程序。无论是从Microsoft还是其他选项,如jTDS
然后,您应该使用类似jdbc:sqlserver://ServerName:Port;databaseName=;user=username;password=password;的连接字符串
当然,你的SQL Server应该处于混合模式,这样你就可以使用在服务器上创建的用户名和密码进行连接。
小程序运行在用户的计算机上,因此你应该向所有访问者开放你的SQL Server端口,这是一个坏主意。

von4xj4u

von4xj4u2#

这个答案是为下一个访问者提供的。为 SQL Server 配置java驱动程序连接可能会让新用户感到非常困惑。我将在这里指导您使用 SQL Server Management Studio(SSMS)
SQL Server上接受两种身份验证。它们是 WindowsSQL Server 身份验证。在这个答案中,我将激活“sa”(系统管理员)帐户,以便通过连接进行快速安装演示。

  • 要启用“sa”帐户 *(如果它已经存在,则可以跳过此操作):
  • 使用默认窗口身份验证模式照常登录
  • 右键单击服务器名称(即 * MYSQL TER223\SQLEXPRESS *)> * 安全性 * >去启用 *SQL Server & Window身份验证模式 * > * 确定 *
  • 在左侧树菜单上,单击 * 安全 * > * 登录 * >右键单击“sa”> * 属性 * >为此“sa”帐户设置“* 密码 *”
  • 然后在左侧菜单上有“Status">启用“Login:
  • 重新启动SQL Server服务
  • 现在通过SMSS上的“*SQL Server身份验证模式 *”以“sa”登录。使用我们刚刚设置的密码。
    为conn. instance启用TCP/IP(默认情况下禁用,特别是在sql express版本上):
  • 打开“SQL Server配置管理器”。这是沿着安装SQL Server引擎的。
  • “*SQL Server网络配置 *”>“Protocol for SQLExpress”>启用“TCP/IP
  • 右键单击“TCP/IP”>“*IP地址 ”>向下滚动,直到找到“IPAll”,然后用 1433 填充“ 端口 *”字段

您现在可以将此凭据用于SMSS:

username       : sa
 password      : ...the password you've just set up above..

字符串
或者,您现在可以在基于java的外部客户端/数据或 BI 工具/sql管理工具(如 PentahoHeidi SQLDB Weaver 或任何特定的java框架连接器描述符等)上使用此凭据:

hostname      : localhost (or any custome host domains)
database name : your database name..
instance name : i.e SQLEXPRESS (this can be found through the SMSS, right click the server name > view connection properties)
port          : 1433
username      : sa
password      : ...the password you've just set up above..


或者通过Java连接管理器/工厂的url/uri:

String Connectionurl="jdbc:sqlserver://localhost:1433;DatabaseName=Yourdatabasename;user=sa;password=yourSApassword";

public Connection createConnection() throws NoSuchAlgorithmException {      
        System.out.println("Creating SQL Server DataBase Connection");
        Connection connection = null; 
        try {  
            // Provide the java database driver
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");  
            // Provide URL, database and credentials according to your database
            // .getConnection ("url/namadatabase, user, password")
            String Connectionurl="jdbc:sqlserver://localhost:1433;DatabaseName=DummyDatabase;user=sa;password=YourSAaccountpassword";
            connection = DriverManager.getConnection(Connectionurl);
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
        if (connection != null) {
            System.out.println("Connection created successfully..");
        }
        return connection;
    }

jv4diomz

jv4diomz3#

Make database URL like :

jdbc:mysql://IP address:DatabasePort/DatabaseName,username, password   

public class Connection {

public static Connection getConexao()throws SQLException{
    try{
        Class.forName("com.mysql.jdbc.Driver");
        return DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/world","root", "rootadmin");

    }catch(ClassNotFoundException e) {
        throw new SQLException(e.getMessage());
    }
}

}

字符串

相关问题