Hello, i have a problem with QSqlQuery accessing a dsn in linux, i have no 
problem with exactly the same code in windows and i check i have correctly
opened the datasource, here i paste the relevant code snippets.


-----------------------------------------------------------------------------------------------------------------------------
import os,  sys, time, re
from PyQt4.QtCore import *
from PyQt4.QtSql import *
from PyQt4.QtGui import *

def conectarMaxdb():
    '''conexion via ODBC con QT a MAXDB'''
    maxdb = QSqlDatabase.addDatabase("QODBC", 'maxdb')
    #maxdb.setDatabaseName("DRIVER={MaxDB 
(Unicode)};HOSTNAME=192.168.1.20;DATABASE=MAXDB2") --> windows code dsn less
    
maxdb.setDatabaseName("DRIVER={MAXDB};ServerNode=192.168.1.20;ServerDB=MAXDB2") 
 --> linux code dsn less
    #maxdb.setDatabaseName("DATABASE") --> linux code with dsn
    maxdb.setUserName("FAKE")
    maxdb.setPassword("FAKE")
    aperturamaxdb = maxdb.open()
    if not aperturamaxdb:
        QMessageBox.warning(None,  "Error conexion con la DB",  
QString("Database Error: %1").arg(maxdb.lastError().text()))
        sys.exit(1)
    return maxdb


if __name__ == "__main__":
    app = QApplication(sys.argv)
    dbmaxdb = conectarMaxdb()
    print dbmaxdb.isOpen() -----> print True
    print dbmaxdb.isValid() ----> print True
    query1maxdb =QSqlQuery(dbmaxdb)
    query1maxdb.exec_(QString("SELECT * FROM DATOS_ANTIGUOS.CLIENTES_ANTIGUO 
WHERE CLI='011113'"))
    query1maxdb.next()
    print query1maxdb.isValid() ---> print False in linux, True in windows

-----------------------------------------------------------------------------------------------------------------------------


When i use unixODBC commandline  tool isql with "isql DATABASE FAKE FAKE" i can 
do SQL commands in the datasource, i have tested in gentoo (gentoo
ebuilds) and debian (hand-compiled) with exactly the same results, the same 
code works well in windows (i only have to uncomment, comment the
setDatabaseName method because changes in param names), anyone knows what can 
be the problem?


Best Regards,
Miguel Angel.
_______________________________________________
PyQt mailing list    [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Reply via email to