diff --git a/chrome/chromeFiles/content/scholar/xpcom/db.js b/chrome/chromeFiles/content/scholar/xpcom/db.js index 36ba0aab8..b47b630b4 100644 --- a/chrome/chromeFiles/content/scholar/xpcom/db.js +++ b/chrome/chromeFiles/content/scholar/xpcom/db.js @@ -31,7 +31,7 @@ Scholar.DB = new function(){ * Run an SQL query * * Optional _params_ is an array of bind parameters in the form - * [{'int':2},{'string':'foobar'}] + * [1,"hello",3] or [{'int':2},{'string':'foobar'}] * * Returns: * - Associative array (similar to mysql_fetch_assoc) for SELECT's @@ -89,7 +89,9 @@ Scholar.DB = new function(){ } } catch (e){ - throw(e + ' [QUERY: ' + sql + '] [ERROR: ' + db.lastErrorString + ']'); + var dberr = (db.lastErrorString!='not an error') + ? ' [ERROR: ' + db.lastErrorString + ']' : ''; + throw(e + ' [QUERY: ' + sql + ']' + dberr); } } @@ -151,7 +153,7 @@ Scholar.DB = new function(){ * Run a query, returning a mozIStorageStatement for direct manipulation * * Optional _params_ is an array of bind parameters in the form - * [{'int':2},{'string':'foobar'}] + * [1,"hello",3] or [{'int':2},{'string':'foobar'}] */ function statementQuery(sql,params){ var db = _getDBConnection(); @@ -161,27 +163,67 @@ Scholar.DB = new function(){ var statement = db.createStatement(sql); } catch (e){ - throw('[QUERY: ' + sql + '] [ERROR: ' + db.lastErrorString + ']'); + var dberr = (db.lastErrorString!='not an error') + ? ' [ERROR: ' + db.lastErrorString + ']' : ''; + throw(e + ' [QUERY: ' + sql + ']' + dberr); } if (statement && params){ for (var i=0; i file.append(SCHOLAR_CONFIG['DB_FILE']);