Zde jsou všechny dostupné informace o JDBC driveru pro 602SQL server v. 9. Dotazy na 602SQL JDBC driver zodpoví hotline (hotline@software602.cz).
Kapitoty: novinky - základní informace - soubory ke stažení - příklady - známá omezení
| 16.3.2005 |
|
| 30.10.2004 |
|
| 30.10.2003 |
|
| 31.7.2003 |
|
| 14.3.2003 |
|
| 11.2.2003 |
|
| 6.2.2003 |
|
| 23.9.2002 |
|
| 21.8.2002 |
|
Driver je dodáván zkompilovaný ve formě JAR archívu 602sql9-jdbc.jar
(viz soubory ke stažení) obsahujícího
*.class soubory.
Před instalací musí být na cílovém počítači nainstalováno Java 2 Standard Edition Runtime Environment (JRE). 602SQL server nemusí být na cílovém počítači nainstalován. Tento driver spolupracuje s JRE verze 1.3 a vyšší.
Soubor 602sql9-jdbc.jar je třeba zkopírovat do podadresáře lib\ext
v adresáři, ve kterém je instalováno Java 2 Runtime Environment. Pokud je
tento adresář např. c:\jre, pak je nutno daný soubor zkopírovat
do adresáře c:\jre\lib\ext. Alternativně lze tento soubor zkopírovat
do jakéhokoliv adresáře a tento soubor přidat do systémové proměnné CLASSPATH.
Zde uvedené názvy adresářů platí pro systém Windows. V jiných operačních
systémech je nutno použít názvy adresářů v nich platné.
Základní třída driveru je cz.Software602.SQL.JDBC.WBDriver.
Tato třída implementuje rozhraní (interface) java.sql.Driver.
Aktuální verze driveru je 1.3 a je určena pro 602SQL verze 9.0 (i když s tímto driverem se lze připojovat také k 602SQL serverům verze 8.0 a 8.1).
Driver je typu Native-protocol pure Java driver, tj. driver je celý napsán v programovacím jazyku Java a s SQL serverem komunikuje přes TCP/IP spojení proprietálním protokolem pro komunikaci mezi 602SQL serverem a jeho klientem.
602SQL JDBC driver implementuje specifikaci JDBC verze 2.1 s omezeními danými specifickými vlastnosti 602SQL serveru a nepodporuje interface specifikované v JDBC Optional extensions (javax.sql).
Implementována jsou následující rozhraní z package java.sql:
Driver, DatabaseMetaData, ResultSetMetaData,
Connection, Statement, PreparedStatement,
CallableStatement, ResultSet, Blob, Clob.
Při otevírání spojení na SQL server se jako parametr předává URL, podle kterého hledá DriverManager vhodný JDBC driver, který je ochoten obsloužit požadavek. Formát URL, který akceptuje 602SQL JDBC driver je:
jdbc:602sql://hostname[:port]/aplikace
Kde "hostname" je název počítače (tj. buď IP adresa, nebo DNS jméno počítače) "port" je port na kterém je spuštěn 602SQL server a "aplikace" je název aplikace (v terminologii 602SQL), resp. katalog (v terminologii JDBC), se kterou chceme pracovat. Pokud není zadán port, pak se použije port 5001, na kterém se standardně spouští 602SQL server.
Příklady:
jdbc:602sql://jasper.kolej.mff.cuni.cz/TestApp jdbc:602sql://192.168.2.163/esupport jdbc:602sql://localhost:8001/wbdrive
Další informace je možné JDBC driveru předat v parametru Properties
metody DriverManager.getConnection(), který obsahuje Name=Value
hodnoty. Driver rozeznává dva řetězce:
user - uživatelské jméno, pod kterým se chceme přihlásitpassword - heslo pro autorizaci uživatelePokud není uživatel specifikován, připojí se 602SQL JDBC driver jako anonymní uživatel.
Pozor: 602SQL server, na který je vytvářeno spojení pomocí 602SQL JDBC driveru, musí umožňovat komunikaci s klienty pomocí protokolu TCP/IP, a to i v případě, že SQL server a aplikace využívající JDBC driver běží na stejném počítači!
602sql9-jdbc.jar JAR
archív s 602SQL JDBC driverem pro 602SQL server v. 9
Sun ONE Studio je integrované vývojové prostředí pro vývoj aplikací v jazyku Java. Lze jej zdarma získat na adrese http://www.sun.com.
// nejdříve načteme základní třídu 602SQL JDBC driveru
// tím se driver zaregistruje u DriverManagera
Class.forName("cz.Software602.SQL9.JDBC.WBDriver");
// vytvoří se objekt Connection - spojení se jménem con
Connection con = DriverManager.getConnection(
"jdbc:602sql://localhost/application",
"myLogin", "myPassword");
// vytvoří se nový objekt Statement - příkaz se jménem stmt
Statement stmt = con.createStatement();
// vytvoří se nový objekt ResultSet - výsledek dotazu se jménem rs,
// jehož obsahem má být výsledek dotazu stmt, který má vybrat z tabulky
// Table1 hodnoty sloupečků a,b,c
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1");
// v následujícím cyklu probíhá čtení hodnot z rs
while (rs.next())
{
int x = rs.getInt("a");
String s = rs.getString("b");
float f = rs.getFloat("c");
// a následuje zpracování načtených dat
}
// nejdříve načteme základní třídu 602SQL JDBC driveru
// tím se driver zaregistruje u DriverManagera
Class.forName("cz.Software602.SQL.JDBC.WBDriver");
// vytvoří se objekt Connection - spojení se jménem con
Connection con = DriverManager.getConnection(
"jdbc:602sql://localhost/application",
"myLogin", "myPassword");
// vytvoří se nový objekt Statement - příkaz se jménem stmt
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
// vytvoří se nový objekt ResultSet - výsledek dotazu se jménem rs,
// jehož obsahem má být výsledek dotazu stmt, který má vybrat z tabulky
// Table1 hodnoty sloupečků a,b,c
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1");
// rs nastavíme za poslední záznam
rs.afterLast();
// v následujícím cyklu probíhá čtení hodnot z rs, záznamy budeme číst v obráceném pořadí
while (rs.previous())
{
int x = rs.getInt("a");
String s = rs.getString("b");
float f = rs.getFloat("c");
// a následuje zpracování načtených dat
}
Tato omezení mohou být odstraněna v budoucích vydáních driveru.
getExportedKeys() a getImportedKeys() z interface DatabaseMetaData vždy vracejí prázdnou množinu záznamůposition() z interface Clob a Blob vyvolá výjimku, protože tuto funkcionalitu nelze efektivně poskytnout bez toho, aby instance příslušné třídy v sobě držela celý CLOB, což by vzhledem k potenciálně neomezené délce CLOBů mělo výrazný vliv na paměťové nároky a stabilitu driveru