SQL ANYWHERE 12 64bit JAVA jak się połączyć z bazą

0

Mam bazę stworzoną w SQL Anywhere 12 o nazwie test
Próbuje się połączyć przez Jconn3 już od kilku dni mam problem:

KOD:

  try {
            Class.forName("com.sybase.jdbc3.jdbc.SybDataSource");
            
            try {
                Connection con = DriverManager.getConnection(
                           "jdbc:sybase:Tds:localhost:2638/test", "dba", "sql");
                    

                     // Using Sybase jConnect 5.2
                     //Class.forName("com.sybase.jdbc2.jdbc.SybDriver");
            } catch (SQLException ex) {
                Logger.getLogger(PowerPackApp.class.getName()).log(Level.SEVERE, null, ex);
            }

               
      
           
    } catch (ClassNotFoundException ex) {
            Logger.getLogger(PowerPackApp.class.getName()).log(Level.SEVERE, null, ex);
        }

Output:
2011-08-28 1606 powerpack.view.PowerPackApp main
SEVERE: null
java.sql.SQLException: JZ006: Caught IOException: java.net.ConnectException: Connection refused: connect
at com.sybase.jdbc3.jdbc.ErrorMessage.raiseError(Unknown Source)
at com.sybase.jdbc3.jdbc.ErrorMessage.raiseErrorCheckDead(Unknown Source)
at com.sybase.jdbc3.tds.Tds.a(Unknown Source)
at com.sybase.jdbc3.tds.Tds.a(Unknown Source)
at com.sybase.jdbc3.tds.Tds.login(Unknown Source)
at com.sybase.jdbc3.jdbc.SybConnection.a(Unknown Source)
at com.sybase.jdbc3.jdbc.SybConnection.handleHAFailover(Unknown Source)
at com.sybase.jdbc3.jdbc.SybConnection.<init>(Unknown Source)
at com.sybase.jdbc3.jdbc.SybConnection.<init>(Unknown Source)
at com.sybase.jdbc3.jdbc.SybDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at powerpack.view.PowerPackApp.main(PowerPackApp.java:52)

0

Udało mi się połączyć z bazą ale nie wykrywa mi w niej żadnych tabel .

Exception in thread "main" com.sybase.jdbc3.jdbc.SybSQLException: SQL Anywhere Error -141: Table 'Student' not found
at com.sybase.jdbc3.tds.Tds.a(Unknown Source)
at com.sybase.jdbc3.tds.Tds.nextResult(Unknown Source)
at com.sybase.jdbc3.jdbc.ResultGetter.nextResult(Unknown Source)
at com.sybase.jdbc3.jdbc.SybStatement.nextResult(Unknown Source)
at com.sybase.jdbc3.jdbc.SybStatement.nextResult(Unknown Source)
at com.sybase.jdbc3.jdbc.SybStatement.queryLoop(Unknown Source)
at com.sybase.jdbc3.jdbc.SybStatement.executeQuery(Unknown Source)
at com.sybase.jdbc3.jdbc.SybStatement.executeQuery(Unknown Source)

0

Nie wiem co jest nie tak znowu nie mogę się połączyć. Czy ktoś mi pomoże. Robił ktoś już połączenie z tą bazą ?

0

Jak próbuje połączyć się używając

SQL Anywhere 11.0.1
In SQL Anywhere version 11.0.1, a new SQL Anywhere JDBC driver was introduced. No longer a generic iAnywhere JDBC driver, it is a JDBC driver specific to SQL Anywhere. This was done to make it easier (ie. less confusing) for people to use JDBC with SQL Anywhere. With the new driver, there is no need to install ODBC on the system. This wasn’t a problem for Windows, but our Linux and Unix customers often had problems with this. As an added bonus, the performance of the driver was improved slightly because we no longer have to go through the ODBC driver manager.
This change involved adding 2 new files to the SQL Anywhere installation: sajdbc.jar and dbjdbc11.dll.
To use the new driver, you need to include %SQLANY11%\java\sajdbc.jar in your classpath. Then, the driver registration is as follows:''

DriverManager.registerDriver( (Driver)
     Class.forName( "sybase.jdbc.sqlanywhere.IDriver" ).newInstance() ); 
 Connection con = DriverManager.getConnection(
    "jdbc:sqlanywhere:uid=DBA;pwd=sql;eng=demo" );

dostaję taki błąd: dbjdbc12.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform
Korzystałem z tej strony : http://iablog.sybase.com/hinsperg/2009/10/connecting-to-sql-anywhere-using-jdbc/

0

Z tego wynika chyba, że masz 32-bitową JVM. Albo użyj 32bitowej biblioteki albo zmień wirtualną maszynę.

1 użytkowników online, w tym zalogowanych: 0, gości: 1