2 * Ext JS Library 0.30
\r
3 * Copyright(c) 2006-2009, Ext JS, LLC.
\r
4 * licensing@extjs.com
\r
6 * http://extjs.com/license
\r
9 Ext.sql.AirConnection = Ext.extend(Ext.sql.Connection, {
\r
11 open : function(db){
\r
12 this.conn = new air.SQLConnection();
\r
13 var file = air.File.applicationDirectory.resolvePath(db);
\r
14 this.conn.open(file);
\r
15 this.openState = true;
\r
16 this.fireEvent('open', this);
\r
21 this.fireEvent('close', this);
\r
24 createStatement : function(type){
\r
25 var stmt = new air.SQLStatement();
\r
26 stmt.sqlConnection = this.conn;
\r
30 exec : function(sql){
\r
31 var stmt = this.createStatement('exec');
\r
36 execBy : function(sql, args){
\r
37 var stmt = this.createStatement('exec');
\r
39 this.addParams(stmt, args);
\r
43 query : function(sql){
\r
44 var stmt = this.createStatement('query');
\r
46 stmt.execute(this.maxResults);
\r
47 return this.readResults(stmt.getResult());
\r
50 queryBy : function(sql, args){
\r
51 var stmt = this.createStatement('query');
\r
53 this.addParams(stmt, args);
\r
54 stmt.execute(this.maxResults);
\r
55 return this.readResults(stmt.getResult());
\r
58 addParams : function(stmt, args){
\r
59 if(!args){ return; }
\r
60 for(var key in args){
\r
61 if(args.hasOwnProperty(key)){
\r
65 v = v.format(Ext.sql.Proxy.DATE_FORMAT);
\r
67 stmt.parameters[parseInt(key)] = v;
\r
69 stmt.parameters[':' + key] = args[key];
\r
76 readResults : function(rs){
\r
79 var len = rs.data.length;
\r
80 for(var i = 0; i < len; i++) {
\r
81 r[r.length] = rs.data[i];
\r