2017-03-10 74 views
-1

我只想知道是否有方法來更改此代碼,因此代碼將連接到我的SQL管理工作室而不是oracle。在我的java代碼中更改我的連接

從第13行到第15行,我相信它將解析器連接到oracle數據庫。由於我使用SQL服務器而不是Oracle數據庫,因此如何更改該部分,因此此解析器將連接到我的SQL管理工作室,這就是我使用的。我需要把我的SQL服務器名稱和密碼?

這裏是我的代碼:

import javax.xml.parsers.*; 
import org.w3c.dom.*; 
import org.xml.sax.SAXException; 
import java.io.*; 
import java.util.*; 
import java.sql.*; 

public class Parser { 

public static void main(String argv[]) throws FileNotFoundException, IOException, ParserConfigurationException, SAXException, ClassNotFoundException, SQLException 
{ Connection con = null; 
    PreparedStatement statement = null; 
    Class.forName("oracle.jdbc.driver.OracleDriver"); 
    con = DriverManager.getConnection("jdbc:oracle:thin:@:1521:XE","2656866","SgxT1221"); 
    Scanner filename = new Scanner(System.in); 
    String inputFileName; 
    System.out.print("\nName of the XML file to be read: \n");  
    inputFileName = filename.next().trim(); 
    File file = new File(inputFileName); 
+0

它是sql還是mysql studio? –

+0

SQL,sql server管理工作室。我很好奇,.getConnection(「jdbc:mysql:// localhost:3306/XE」,「2656866」,「SgxT1221);在我的sql studio中有什麼相當於 – LIuYuan

回答

0

您的代碼正在使用Oracle驅動程序並嘗試連接到Oracle。要連接到您的MSSQLServer必須做以下的事情:

-

  1. 替換Oracle驅動程序和網址與MSSQL值

    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 
    con = DriverManager.getConnection("jdbc:microsoft:sqlserver://HOST:1433;DatabaseName=DATABASE","2656866","SgxT1221"); 
    
  2. 添加MSSQLSERVER驅動jar到classpath中。您可以從https://docs.microsoft.com/en-us/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server

    下載它也不要使用*導入包。 *將從該包中導入所有類,而您只需要該包中的幾個類。

+0

堆棧溢出用戶可以幫助你,如果你卡住了,我們不會爲你寫代碼。我建議你必須嘗試一下,如果這不起作用,請回過頭來評論或更新你的帖子。如果您發佈這樣的郵件,我們會爲您提供幫助,然後人們會將您的帖子標記爲垃圾郵件。 – Maverick

+0

嘿,先生只是想知道atabaseName = DATABASE「,」2656866「,」SgxT1221「,,我的數據庫會是同一個名字?另外我怎樣才能找到我的密碼? – LIuYuan

+0

您需要使用您用於MSSQLSERVER的憑據更新HOST,用戶名和密碼。 – Maverick

0

更改以下到:

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 
con = DriverManager.getConnection("jdbc:microsoft:sqlserver://HOST:1433;DatabaseName=DATABASE","2656866","SgxT1221"); 
+0

嘿,先生,我可以給你發電子郵件,我發郵件是gmail的gethbonow,請考慮幫幫我!我真的很遺憾沒有修復這段代碼。 – LIuYuan

0
Class.forName("oracle.jdbc.driver.OracleDriver"); 
con = DriverManager.getConnection("jdbc:oracle:thin:@:1521:XE","2656866","SgxT1221"); 

替換上面的代碼下面行代碼。

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 
con =DriverManager.getConnection("jdbc:sqlserver://localhost\\XE;user=sa;password=secret); 
+0

嘿,先生好奇,是2656866和sgxt1221,在SQL服務器上應該等於什麼?我發現我的本地主機號碼?localhost:3306/XE「 – LIuYuan

+0

1433是您的端口號。 –

+0

2656866和sgxt1221是您的服務器的默認用戶名和密碼。 –

0

如下更改兩個線路代碼:

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 
con=DriverManager.getConnection("jdbc:microsoft:sqlserver://HOST:1433;DatabaseName=DATABASE","2656866","SgxT1221"); 

還要添加mySQL jar download

相關問題