(OpenJDK)JDBC 无法更改或创建表<MS SQL Server Tools 18 mysql 8 JRE 17>[关闭]

问题描述 投票:0回答:0

使用 MS Sql Server Management Studio 18 我可以创建和执行所有数据库工作。没问题。

在 JDBC 端(mysql 8.0.33 和 JavaSE-17),我可以查看表,没有问题,也没有插入任何东西。

但是,无法以任何方式更改表格或创建表格。有趣的是,如果我在我的会话中创建一个表,在同一个会话中插入和选择,我会看到结果。然而,关闭连接并再次查询会产生一个抛出的错误,因为如果我尝试通过 jdbc 创建它,该表不存在。

如果我在 MS sql 服务器端创建了表,我将能够查询该表,但是将看不到来自 JDBC 的任何更新。

来自 MS sql 服务器端的任何更新都会立即在 JDBC 中看到。 这是权限问题吗?谢谢。 `包人;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;


//create table 
    public class FollowTrail3 {

        public static void main(String[] args) {
     
             final String DATABASE_URL =
                     "jdbc:sqlserver://localhost;" +
                    "databaseName=students;integratedSecurity=true;encrypt=true;TrustServerCertificate=true";
         Connection dbConnection ;
        
        
        try{
             
              
              Properties properties = new Properties();
              properties.put("user", "login");
              properties.put("password", "passwd");
  
              
             dbConnection =  DriverManager.getConnection(DATABASE_URL , properties );  
             
        
        
             dbConnection.setAutoCommit(false);
            
            
             Statement stmt = dbConnection.createStatement();
             String sql = "CREATE TABLE REGISTRATION " +
                       "(id INTEGER not NULL, " +
                       " first VARCHAR(255), " + 
                       " last VARCHAR(255), " + 
                       " age INTEGER, " + 
                       " PRIMARY KEY ( id ))"; 

             stmt.executeUpdate(sql);
             System.out.println("Created table in given database...");  
            
             dbConnection.close(); 
            //No complaints.. creates table in session - but is not persistent 

              
          }
          catch(SQLException sqlE) {
              sqlE.getMessage();
              
          }
        
    }

    }

`

java sql-server jdbc
© www.soinside.com 2019 - 2024. All rights reserved.