当前位置: 首页 > 知识库问答 >
问题:

在Netbeans中连接azure数据库的Java程序

吕峰
2023-03-14

这是我的代码:请帮助我如何用java程序连接我的数据库到azure!!!

public class App {

    public static void main(String[] args) {

        // Connect to database
        String hostName = "testchinnaa.database.windows.net:1433"; // update me
        String dbName = "Test_Gopi"; // update me
        String user = "chinna"; // update me
        String password = "******"; // update me

        String url = String.format("jdbc:sqlserver://testchinnaa.database.windows.net:1433;database=Test_Gopi;user=chinna@testchinna;password=*****;encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;"
            + "hostNameInCertificate=*.database.windows.net;loginTimeout=30;", hostName, dbName, user, password);
        Connection connection = null;
        try {
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            connection = DriverManager.getConnection(url);
            String schema = connection.getSchema();
            System.out.println("Successful connection - Schema: " + schema);

            System.out.println("Query data example:");
            System.out.println("=========================================");

            // Create and execute a SELECT SQL statement.
            String selectSql = "SELECT TOP 20 pc.Name as CategoryName, p.name as ProductName "
                + "FROM [SalesLT].[ProductCategory] pc "  
                + "JOIN [SalesLT].[Product] p ON pc.productcategoryid = p.productcategoryid";

            try (Statement statement = connection.createStatement();
            ResultSet resultSet = statement.executeQuery(selectSql)) {

                // Print results from select statement
                System.out.println("Top 20 categories:");
                while (resultSet.next())
                {
                    System.out.println(resultSet.getString(1) + " "
                        + resultSet.getString(2));
                }
                connection.close();
            }
        }
        catch (Exception e) {
            e.printStackTrace();
        }
    }
}

共有1个答案

金兴朝
2023-03-14

对不起,您必须弄清楚您使用的是MySql还是MSSQL。你说你用的是MySQL。但是,在您的连接字符串中,它是一个sqlserver,这意味着它是一个MSSQL。

下面是使用Java访问数据库的教程:

>

  • 您需要为数据库下载连接器:

    手动将连接器jar文件添加到您的类路径中。也可以使用Maven dependencies manager在项目中安装和配置连接器/J库。

    <!-- Example for mysql -->
    <dependency>
       <groupId>mysql</groupId>
       <artifactId>mysql-connector-java</artifactId>
       <version>8.0.18</version>
    </dependency>
    

    代码示例

    >

  • 对于MSSQL:

    try {
        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
        connection = DriverManager.getConnection("conntection_string");
        String SQL = "SELECT name FROM sysdatabases;";
    
        try (Statement statement = connection.createStatement();
             ResultSet resultSet = statement.executeQuery(SQL)) {
    
            // Print results from select statement
            while (resultSet.next()) {
                System.out.println(resultSet.getString(1));
            }
            connection.close();
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    
    Connection conn = null;
    ResultSet rs = null;
    try {
        Class.forName("com.mysql.cj.jdbc.Driver");
        String connectionUrl = "jdbc:mysql://{server_name}.mysql.database.azure.com:3306?useSSL=true&requireSSL=false&serverTimezone=UTC";;
        conn = DriverManager.getConnection(connectionUrl, "username_from_portal, like: jack@mysqldemo258", "password");
        rs = conn.prepareStatement("show databases").executeQuery();
    
        while(rs.next()){
            System.out.println(rs.getString(1));
        }
    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    } catch (SQLException e) {
        e.printStackTrace();
    } finally {
        try{
            if(rs != null) rs.close();
            if(conn != null) conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    

  •  类似资料:
    • 使用第一个驱动程序(db2jcc.jar和db2jcc_license_cisuz.jar) 无法使用com.ibm.db2.jcc.db2driver建立到jdbc:db2:/host:446/database的连接([jcc][t4][2057][11264][3.69.24]应用程序服务器拒绝建立连接。试图访问数据库database,该数据库找不到或不支持事务。errorcode=-4499

    • 2012年12月19日下午7:26:55 DBConnect严重:null java.sql.sqlexception:[Microsoft][ODBC Driver Manager]未找到数据源名称,也未在sun.jdbc.ODBC.jdbc.ddc.createsqlexception(jdbcodbc.jdbc.jdbc.jdbc.jdbc.jdbc.jdbc.jdbc.jdbc.jdbc.

    • 本文向大家介绍java连接mysql数据库 java连接sql server数据库,包括了java连接mysql数据库 java连接sql server数据库的使用技巧和注意事项,需要的朋友参考一下 在java的应用中,我们经常会对数据库进行必要的操作,下来我们就了解一下如何用java连接mysql数据库 以及java连接sql server数据库 一、mysql 二、sql server 以上就

    • 我试图使用pyodbc连接到Azure SQL数据库,但收到错误: Pyodbc.InterfaceError:('28000','[28000][Microsoft][SQL Server的ODBC驱动程序17][SQL Server]用户'adminc'登录失败。(18456)(SQLDriverConnect);[28000][Microsoft][SQL Server的ODBC驱动程序17

    • 我已使用WebForms从VS-2019成功发布Azure应用服务。我已成功保护它,以便用户必须使用与应用服务相同域中的Azure AAD帐户登录。我已成功创建AzureSQL数据库。我已成功将AAD域中的用户添加到数据库中,并通过将我创建的Azure AAD帐户用户之一硬编码到连接字符串中,从Azure应用服务中连接到数据库。 现在,我想使用应用程序服务登录名中经过身份验证的AAD用户连接到Az

    • 经过一番努力,我设法使用Jersy-Jax-RS为我的Rest服务编写了一个工作代码。 我的项目包括简单的数据库操作与hadoop数据库。 org/apache/hive/service/rpc/thrift/TCLIService$Iface 使用-e开关重新运行maven 类未找到org.apache.hive.jdbc.HiveDriver 问题是: Hadoop数据库连接需要许多其他支持依