12


ODBC
Propriétés
className String
"ODBC"
error    String
The last error message. It is initially undefined, and only changes when a query() or exec() function fails.
name String
Driver name
Méthodes
ODBC( connection string String) => ODBC
connection string : "DSN=nom de la source;UID=identifiant;PWD=mot de passe;"
-
Se connecte à un pilote ODBC. Vous pouvez ainsi utiliser :
var myDB = new ODBC("DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=dbname;USER=root;PASSWORD=password; OPTION=3;");
var myReader = myDB.query('select * from people');
ou
var myT = new Table('odbc://DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=dbname;USER=root;PASSWORD=password;OPTION=3;/people')
La différence est que la méthode query() renvoie une Table en lecture seule alors que le constructeur Table permet dʼeffectuer des modifications à lʼaide des méthodes set() et setRow().
Vous pouvez apercevoir une boîte de dialogue dʼerreur de Microsoft. Cela signifie seulement quʼil y a une erreur dans votre chaîne de connexion. JSDB est une interface en ligne de commande SQL médiocre . Préférez Raosoft's SQL.exe pour cet usage. [ndlr : cette dernière remarque nʼengage que Shanti Rao ; pour ma part je trouve JSDB très efficace]
close( ) => Boolean
Ferme la connexion à la base de données et toutes les tables ouvertes avec la méthode query(). Les objets tables sont invalides (tout appel à lʼune de leur méthode échoue) par contre ils ne sont pas supprimés.
columns( table String, longFormat Boolean) => Array
table A table name
-
Renvoie un tableau comprenant tous les noms de colonne de la table spécifiée. Si longFormat est vrai (true), la valeur renvoyée ressemble à ["id INTEGER","name VARCHAR(32)","value DECIMAL(12,5)"].
commit( ) returns Boolean
Effectue un commit sur la transaction courante.
escape( text String) returns String

text : texte à envoyer à la base de données
-
Transforme la chaîne en une chaîne adaptée pour les transaction SQL (gestion des quotes et des séquences d'échappement pour les caractères spéciaux). Exemple :
db.exec("insert into friends (name) values (" + db.escape('Cynthia') + ")")

exec( command String) returns Boolean
command String : Requête SQL
-
Effectue un appel SQLExecDirect() sur la bade de données. Retourne true si l'opération réussit. La consultation de la propriété error explicite la nature de l'anomalie.

execute( command String) returns Boolean
command String : Requête SQL
-
Voir ODBC.exec()

keys( table String) => Array
table String : un nom de table
-
Retourne la liste des noms de toutes les clefs (index) pour la table spécifiée.

query( query String) => Table
query String : Requête SQL (de type "SELECT...")
-
Execute une commande SQL command et retourne l'ensemble résultat sous la forme d'un object Table (en lecture seule). L'objet Table fournit un cache et un accès indexé aux enregistrements (même si le pilote ODBC ne le supporte pas). La lecture d'une table SQL à l'aide d'une simple requête peut s'effectuer directement avec un instance de Table : new Table('odbc://userid:password@service/tablename?field1=xxx*&field2=yyy'). Les deux méthodes d'accès charge les données à la demande à partir du serveur.

rollback( ) => Boolean
Annule la transaction courante si la base de données n'est pas en mode AUTOCOMMIT.
setAutoCommit(value Boolean) => Boolean
value : Nouvelle valeur
Définit l'état du drapeau AUTOCOMMIT de la base de données (true par défaut suite à l'ouverture de la connexion ODBC).

table(name String) returns Table

name : Nom de la table
-
Instancie un objet Table sur table indiquée de la base de données.

tables( ) => Array
Retourne un tableau listant toutes les tables de la base de données.