2015-07-10 4 views
0

Я пробовал использовать web.py framework для monetdb.monetdb с web.py (raise UnknownDB, dbn issue)

Это мой код реализации:

import web 

render = web.template.render('templates/') 
db  = web.database(dbn = 'monetdbd', user = 'monetdb', pw = 'monetdb', db = 'test') 

urls = (
    '/','index' 
) 


class index: 
    def GET(self,name): 
     xSelect = db.select(x) 
     return render.index(xSelect) 

if __name__ == "__main__": 
    app = web.application(urls,globals()) 
    app.run() 

Я получил следующее сообщение об ошибке при запуске питона code.py

Traceback (most recent call last): 
    File "code.py", line 4, in <module> 
    db  = web.database(dbn = 'monetdbd', user = 'monetdb', pw = 'monetdb', db = 'test') 
    File "/usr/local/lib/python2.7/dist-packages/web.py-0.37-py2.7.egg/web/db.py", line 1145, in database 
    raise UnknownDB, dbn 
web.db.UnknownDB: monetdbd 

Сервер базы данных работает:

[email protected]:~/Desktop/Monetdb/web$ ps ucx| grep -i monetdb 
bmartis 2482 0.0 0.0 63956 2476 ?  Ssl Jun29 0:33 monetdbd 
[email protected]:~/Desktop/Monetdb/web$ 

Я не понимаю, что здесь неправильно в определении db. Какой правильный синтаксис или monetdb не поддерживает это?

ответ

1

Похоже, что web2py не поддерживает MonetDB в данный момент. Полный список поддерживаемых баз данных и необходимых драйверов можно найти в поле Chapter 6 из web2py Complete Reference Manual. На сегодняшний день это выглядит, как показано ниже:

  • SQLite - sqlite3 или pysqlite2 или zxJDBC (на Jython)
  • PostgreSQL - psycopg2 или pg8000 или zxJDBC (на Jython)
  • MySQL - pymysql или MySQLd
  • Oracle - cx_Oracle
  • MSSQL - pyodbc или pypyodbc
  • FireBird - kinterbasdb или fdb или pyodbc
  • DB2 - pyodbc
  • Informix - informixdb
  • Энгр - ingresdbi
  • CUBRID - cubriddb
  • Sybase - Sybase
  • Teradata - pyodbc
  • SAPDB - sapdb
  • MongoDB - pymongo
  • IMAP - imaplib
+0

Спасибо за обновление. –

 Смежные вопросы

  • Нет связанных вопросов^_^