Initial revision
[mir.git] / source / mir / storage / DatabaseAdaptorSybase.java
1 /*
2  * Implementiert DatabaseAdaptor Interface für Sybase.
3  */
4
5
6 package  mir.storage;
7
8 import java.util.*;
9 import  mir.misc.*;
10
11
12 /**
13  * Diese Klasse implementiert Interface DatabaseAdaptor fuer Sybase
14  *
15  * @author <RK>
16  * @version 15.05.2000
17  */
18 public final class DatabaseAdaptorSybase
19                 implements DatabaseAdaptor {
20
21         /**
22          * Liefert den Namen der Adaptorklasse <code>Adaptor.Sybase.Driver</code>
23          * für Sybase zurück.
24          * @return Adaptorklasse als String
25          */
26     public String getDriver() {
27             return Configuration.getProperty("Adaptor.Sybase.Driver");
28     }
29
30         /**
31          * Liefert die URL für JDBC zurück, in den die Parameter user, pass und host
32          * eingefügt werden. Die URL wird aus der Konfiguration geholt.
33          *
34          * @param user user als String
35          * @param pass passwort als String
36          * @param host host als String
37          * @return url als String
38          */
39     public String getURL(String user, String pass, String host) {
40             return Configuration.getProperty("Adaptor.Sybase.URL");
41                 /** @todo  hier muesste bessererweise $HOST durch HOST ersetzt, etc. werden */
42     }
43
44         /**
45          * Gibt zurück, ob das SQL der Datenbank den <code>limit</code>-Befehl beherrscht.
46          * @return false
47          */
48         public boolean hasLimit () {
49                 return  false;
50         }
51
52         /**
53          * Liefert zurück, ob der <code>limit</code>-Befehl erst start und dann offset
54          * hat (true), oder umgekehrt. Nur Relevant, wenn hasLimit true zurückliefert.
55          *
56          * @return false
57          */
58     public boolean reverseLimit() {
59       return false;
60     }
61
62         /**
63          * Liefert ein Properties-Objekt zurueck mit user und password.
64          * @param user
65          * @param password
66          * @return Properties
67          */
68     public Properties getProperties(String user, String password) {
69       Properties props = new Properties();
70       props.put("user", user);
71       props.put("password", password);
72       return props;
73     }
74
75
76
77
78
79
80
81
82     public String getLastInsertSQL(Database theDB) {
83            return "select currval('"+theDB.getCoreTable()+"_id_seq')";
84     }
85 }