例外:没有为jdbc找到合适的驱动程序:derby:\\ serveraddress \ db; create = false

时间:2016-04-12 17:18:51

标签: c# .net database jdbc derby

我知道这个问题已被多次询问过...但它总是指JAVA。不是这次

  1. 使用derbyNET.dll在C#中构建代码(并从.jar编译为 .dll derby.dll和derbytools.dll)
  2. 用Java编写的相同代码(也使用javac在JAVA中编译) &安培;&安培; java ...)只有在程序运行之前添加才能正常工作:set CLASSPATH = C:\ PROGRA〜1 \爪哇\ JDK18〜1.0_7 \ DB-DER〜1.0-B \ lib中\的derby.jar; C:\ PROGRA〜1 \爪哇\ JDK18〜1.0_7 \ DB-DER〜1.0-乙\ lib中\ derbytools.jar;
  3. 用C#编写的代码抛出了提到的错误。我也尝试过改造 这段代码从java到c#,错误是一样的。
  4. 我很确定这个问题是由于C#看不到的 库作为驱动程序(derby.dll和derbytools.dll)
  5. 有关如何将此驱动程序添加到visual studio的任何建议吗?

    C#中的CODE:

    try{
        DerbyNET derbyDB = new DerbyNET(@"\\serveraddress\sql\db;        create=false");
        if (!derbyDB.openConnection()){
             //Error opening Derby DB
             Console.WriteLine("not connected");
             return;
        }
    
        DataTable oDT = derbyDB.getRS("SELECT * FROM admin.user_data") as DataTable;
        if (oDT.Columns[0].ColumnName == "Erro"){
            //Read the ** ERRORS ** section below
            Thread.Sleep(1000);
            oDT = derbyDB.getRS("SELECT * FROM FROM admin.user_data") as DataTable;
        }
        else if (oDT.Rows.Count == 1 && oDT.Columns.Count == 1){
             //Some error occured
             String strError = derbyDB.getLastError();
             return;
         }
    
        foreach (DataRow row in oDT.Rows){
           Console.WriteLine("---ROW---");
           foreach (var item in row.ItemArray){
               Console.Write("Item: ");
               Console.WriteLine(item);
           }
        }
      derbyDB.closeConnection();
    }
    catch (Exception ex){
        Console.WriteLine(ex.Message);
    }
    

    JAVA中的CODE:

    try{  
         {    
            con = DriverManager.getConnection("jdbc:derby:\\\\serveraddress\\sql\\db;create=false");
           Statement sta = con.createStatement();
           ResultSet res = sta.executeQuery("SELECT * FROM ADMIN.USER_DATA");
           java.lang.System.@out.println("ADMIN.USER_DATA: ");
          while (res.next()){
             java.lang.System.@out.println("  " + res.getString("USERID") + ", " + res.getString("PASSWORD") + ", " + res.getString("FIRST_NAME") + ", " + res.getString("LAST_NAME") +
                                ", " + res.getString("EMAIL"));
         }
          res.close();
          sta.close();
          con.close();
         }
     }
     catch (System.Exception e){
          {
            java.lang.System.err.println("Exception: " + e.getMessage());
          }
      }
    

0 个答案:

没有答案