IOError:数据库架构已过时

时间:2019-05-23 05:24:20

标签: mysql sql sqlalchemy

运行必须编写sqlite文件的python程序会产生IOError:数据库架构已过时。

写入的sqlite文件为空。 错误如下:

will compute the lowest eigenvector by diagonalizing the Hessian
Traceback (most recent call last):
  File "bh.py", line 4, in <module>
    database=system.create_database('lj17.sqlite')
  File "/home/gn203/.local/lib/python2.7/site-packages/pele/systems/basesystem.py", line 234, in create_database
    db = Database(**kwargs)
  File "/home/gn203/.local/lib/python2.7/site-packages/pele/storage/database.py", line 426, in __init__
    raise IOError("existing file (%s) is not a pele database." % db)
IOError: existing file (lj17.sqlite) is not a pele database.

在空的sqlite文件上运行migration_database.py后出现第二个错误。

lj17.sqlite
current version: 0
newest version: 2
migrating from database version 0 to 1
Traceback (most recent call last):
  File "/home/gn203/pkg/pele-master/scripts/migrate_db.py", line 63, in <module>
    migrate(dbfile)
  File "/home/gn203/pkg/pele-master/scripts/migrate_db.py", line 47, in migrate
    schema = migrate_script[schema](connection, schema)
  File "/home/gn203/pkg/pele-master/scripts/migrate_db.py", line 13, in from_0_to_1
    connection.execute("ALTER TABLE tbl_minima ADD fvib FLOAT;")
  File "/home/gn203/.local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1294, in execute
    params)
  File "/home/gn203/.local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1471, in _execute_text
    statement, parameters
  File "/home/gn203/.local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1535, in _execute_context
    context)
  File "/home/gn203/.local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1528, in _execute_context
    context)
  File "/home/gn203/.local/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 325, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.OperationalError: (OperationalError) no such table: tbl_minima 'ALTER TABLE tbl_minima ADD fvib FLOAT;' ()

0 个答案:

没有答案