#include <mlabScriptWrappers.h>
Inherits QObject.
MLABSqlDatabase. 
The MLABSqlDatabase object can be used to connect to a SQL database and perform queries on it. 
 
◆ close
  
  
      
        
          | void MLABSqlDatabase::close  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Closes an open connection. 
 
 
◆ commit
  
  
      
        
          | bool MLABSqlDatabase::commit  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Commits the transaction data (returns true on success). 
 
 
◆ createQuery
Creates a new query object. 
 
 
◆ databaseName
  
  
      
        
          | QString MLABSqlDatabase::databaseName  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Returns the name of the database. 
 
 
◆ getQSqlDatabase
  
  
      
        
          | QSqlDatabase * MLABSqlDatabase::getQSqlDatabase  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inlineslot   | 
  
 
Returns the underlying QSqlDatabase instance. 
 
 
◆ hostName
  
  
      
        
          | QString MLABSqlDatabase::hostName  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
 
◆ isOpen
  
  
      
        
          | bool MLABSqlDatabase::isOpen  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Returns whether the database is open. 
 
 
◆ lastError
  
  
      
        
          | QMap< QString, QVariant > MLABSqlDatabase::lastError  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Returns the last error message as a map. 
The map contains:
- message - complete message (type,driverText,databaseText,errorNumber)
 
- type - type of error
 
- databaseText
 
- driverText
 
- number - error number (depends on driver/database type) 
 
 
 
◆ open [1/2]
  
  
      
        
          | bool MLABSqlDatabase::open  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Opens the connection. 
All connections parameters must be set before calling open. Returns true on success. 
 
 
◆ open [2/2]
  
  
      
        
          | bool MLABSqlDatabase::open  | 
          ( | 
          const QString & |           username,  | 
         
        
           | 
           | 
          const QString & |           password ) | 
         
       
   | 
  
slot   | 
  
 
Opens the connection with given username and password. 
All connections parameters must be set before calling open, except for username and password. Returns true on success. 
 
 
◆ port
  
  
      
        
          | int MLABSqlDatabase::port  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
 
◆ query
  
  
      
        
          | QVariant MLABSqlDatabase::query  | 
          ( | 
          const QString & |           sqlStatement | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Performs a query and returns the complete result as a list of records (maps) if the statement is a SELECT; otherwise, it returns the number of affected rows. 
- returns a list of records (dict) on a successful SELECT
 
- returns number of affectedRows on any other statement
 
- returns -1 on an error
 
Example that prints the results of a specific select statement: 
results = db.query("SELECT username,password from be_users;")
if not results == -1:
  # iterate over all rows
  for result in results:
    # print the username and password of each row
    MLAB.
log(
"username " + result[
"username"])
 
    MLAB.
log(
"password " + result[
"password"])
 
Access to all global functions and objects of MeVisLab (MLAB).
Definition mlabGlobalScriptAccess.h:83
 
void log(const QString &text)
Logs the given text to the console.
 
Example that prints all keys in the result rows of a select statement or the number of affected rows on other statements, assuming that "db" is an opened database: 
def printDB(db, sqlStatement):
  result = db.
query(sqlStatement)
 
  if not result == -1:
    # is a select result?
    for row in result:
      for key in row:
  else:
    MLAB.log(
"error in statement")
 
QVariant query(const QString &sqlStatement)
Performs a query and returns the complete result as a list of records (maps) if the statement is a SE...
 
  
 
 
◆ removeQuery
Removes the query object. 
 
 
◆ rollback
  
  
      
        
          | bool MLABSqlDatabase::rollback  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Rolls back to the beginning of the transaction (returns true on success). 
 
 
◆ setDatabaseName
  
  
      
        
          | void MLABSqlDatabase::setDatabaseName  | 
          ( | 
          const QString & |           name | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Sets the name of the database. 
 
 
◆ setHostName
  
  
      
        
          | void MLABSqlDatabase::setHostName  | 
          ( | 
          const QString & |           hostname | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
 
◆ setPassword
  
  
      
        
          | void MLABSqlDatabase::setPassword  | 
          ( | 
          const QString & |           pwd | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Sets the database connection password. 
 
 
◆ setPort
  
  
      
        
          | void MLABSqlDatabase::setPort  | 
          ( | 
          int |           port | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
 
◆ setUserName
  
  
      
        
          | void MLABSqlDatabase::setUserName  | 
          ( | 
          const QString & |           name | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Sets the database user name. 
 
 
◆ supportsQuerySize
  
  
      
        
          | bool MLABSqlDatabase::supportsQuerySize  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Returns whether the database supports returning the size of a SELECT statement. 
 
 
◆ supportsTransactions
  
  
      
        
          | bool MLABSqlDatabase::supportsTransactions  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Returns whether the database supports transactions. 
 
 
◆ tables
  
  
      
        
          | QStringList MLABSqlDatabase::tables  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Returns a list of tables of the database (call open() first!). 
 
 
◆ transaction
  
  
      
        
          | bool MLABSqlDatabase::transaction  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Starts a transaction (returns true on success). 
 
 
◆ userName
  
  
      
        
          | QString MLABSqlDatabase::userName  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
slot   | 
  
 
Returns the database username.