@@ -18,7 +18,7 @@ var JSON = (function (){
18
18
'\\' : '\\\\'
19
19
} ;
20
20
21
- // string quote
21
+ // String quote
22
22
function quote ( string ) {
23
23
escapable . lastIndex = 0 ;
24
24
return escapable . test ( string ) ? '"' + string . replace ( escapable , function ( a ) {
@@ -108,7 +108,7 @@ var JSON = (function (){
108
108
}
109
109
}
110
110
111
- // stringify method
111
+ // Stringify method
112
112
JSON . stringify = function ( value , replacer , space ) {
113
113
var i ;
114
114
gap = '' ;
@@ -125,14 +125,14 @@ var JSON = (function (){
125
125
rep = replacer ;
126
126
if ( replacer && typeof replacer !== 'function' &&
127
127
( typeof replacer !== 'object' ||
128
- typeof replacer . length !== 'number' ) ) {
128
+ typeof replacer . length !== 'number' ) ) {
129
129
throw new Error ( 'JSON.stringify' ) ;
130
130
}
131
131
132
- return str ( '' , { '' : value } ) ;
132
+ return str ( '' , { '' : value } ) ;
133
133
} ;
134
134
135
- // parse method
135
+ // Parse method
136
136
JSON . parse = function ( text , reviver ) {
137
137
var j ;
138
138
@@ -164,14 +164,14 @@ var JSON = (function (){
164
164
}
165
165
166
166
if ( / ^ [ \] , : { } \s ] * $ /
167
- . test ( text . replace ( / \\ (?: [ " \\ \/ b f n r t ] | u [ 0 - 9 a - f A - F ] { 4 } ) / g, '@' )
168
- . replace ( / " [ ^ " \\ \n \r ] * " | t r u e | f a l s e | n u l l | - ? \d + (?: \. \d * ) ? (?: [ e E ] [ + \- ] ? \d + ) ? / g, ']' )
169
- . replace ( / (?: ^ | : | , ) (?: \s * \[ ) + / g, '' ) ) ) {
167
+ . test ( text . replace ( / \\ (?: [ " \\ \/ b f n r t ] | u [ 0 - 9 a - f A - F ] { 4 } ) / g, '@' )
168
+ . replace ( / " [ ^ " \\ \n \r ] * " | t r u e | f a l s e | n u l l | - ? \d + (?: \. \d * ) ? (?: [ e E ] [ + \- ] ? \d + ) ? / g, ']' )
169
+ . replace ( / (?: ^ | : | , ) (?: \s * \[ ) + / g, '' ) ) ) {
170
170
171
171
j = eval ( '(' + text + ')' ) ;
172
172
173
173
return typeof reviver === 'function'
174
- ? walk ( { '' : j } , '' )
174
+ ? walk ( { '' : j } , '' )
175
175
: j ;
176
176
}
177
177
@@ -184,6 +184,7 @@ var JSON = (function (){
184
184
/**
185
185
* 64位字符解码
186
186
* http://blog.csdn.net/cuixiping/article/details/409468
187
+ * @private
187
188
* @param base64
188
189
* @returns {* }
189
190
*/
@@ -207,7 +208,7 @@ function base64Decode(base64){
207
208
stream = null ;
208
209
adostream = null ;
209
210
xmldom = null ;
210
-
211
+
211
212
return result ;
212
213
}
213
214
@@ -231,10 +232,13 @@ var ADODB = {
231
232
try {
232
233
connection . Open ( params . connection ) ;
233
234
connection . Execute ( params . query ) ;
234
- connection = null ;
235
235
} catch ( e ) {
236
236
valid = false ;
237
237
message = e . message ;
238
+ } finally {
239
+ // 关闭数据库链接,不管有没有操作成功
240
+ connection . Close ( ) ;
241
+ connection = null ;
238
242
}
239
243
240
244
stdout ( {
@@ -243,16 +247,14 @@ var ADODB = {
243
247
} ) ;
244
248
} ,
245
249
query : function ( params ) {
246
- var valid = true , records = [ ] ,
250
+ var enumer , fields = [ ] ,
251
+ valid = true , records = [ ] ,
247
252
message = 'Execute SQL: ' + params . query + ' Success !' ,
248
- connection = new ActiveXObject ( 'ADODB.Connection' ) ;
253
+ connection = new ActiveXObject ( 'ADODB.Connection' ) ,
254
+ recordset = new ActiveXObject ( 'ADODB.Recordset' ) ;
249
255
250
256
try {
251
257
connection . Open ( params . connection ) ;
252
- var enumer ,
253
- fields = [ ] ,
254
- recordset = new ActiveXObject ( 'ADODB.Recordset' ) ;
255
-
256
258
recordset . Open ( params . query , connection ) ;
257
259
enumer = new Enumerator ( recordset . Fields ) ;
258
260
@@ -264,6 +266,7 @@ var ADODB = {
264
266
}
265
267
266
268
recordset . MoveFirst ( ) ;
269
+
267
270
while ( ! recordset . EOF ) {
268
271
var item = { } ;
269
272
for ( var i = 0 ; i < fields . length ; i ++ ) {
@@ -274,13 +277,16 @@ var ADODB = {
274
277
recordset . MoveNext ( ) ;
275
278
}
276
279
}
277
-
278
- recordset . Close ( ) ;
279
- recordset = null ;
280
- connection = null ;
281
280
} catch ( e ) {
282
281
valid = false ;
283
282
message = e . message ;
283
+ } finally {
284
+ // 关闭数据库链接,不管有没有操作成功
285
+ recordset . Close ( ) ;
286
+ connection . Close ( ) ;
287
+ enumer = null ;
288
+ recordset = null ;
289
+ connection = null ;
284
290
}
285
291
286
292
stdout ( {
0 commit comments