Indeed 2 does not help.

If you delete or rename a sqlite table and if you are not doing it
using web2py (db.table.drop()) then you should tell web2py the table
no loger exists. You do this by deleting the databases/
*_tablename.table files

On Dec 19, 4:50 pm, Yarin <ykess...@gmail.com> wrote:
> OK I understand the SQLite issue, but not the options I have.
>
> 1) SQLite does support renaming tables. I renamed the table
> in question in SQLiteManager, hoping that web2py would then create a
> new table under the old name. But now web2py simply complains that the
> old table doesn't exist. Why wouldn't it create a new, empty table?
>
> 2) According to the web2py docs, "The solution consists in
> updating all records of the table and updating the values in the
> column in question with None." This is quite unclear- how does this
> help? In my situation the column values were already None.
>
> I'm afraid I don't understand how to proceed. Is there a work-
> around short of creating an entirely new database file?
> On Dec 19, 3:13 pm, Massimo Di Pierro <massimo.dipie...@gmail.com>
> wrote:
>
>
>
>
>
>
>
> > correct.
>
> > Because SQLite does not support ALTER TABLE DROP therefore it cannot
> > drop a column from an existing table not even to replace it. It works
> > with the other databases. There is special logic in dal.py to skip
> > this type of migrations in sqlite.
>
> > Massimo
>
> > On Dec 19, 2:03 pm, Yarin <ykess...@gmail.com> wrote:
>
> > > When I change a table definition in db.define_table, either by
> > > dropping a field or changing a field type, the change never seems to
> > > take effect in SQL. Old columns and old field types are always
> > > retained, even though web2py seems to 'think' they've changed.
>
> > > I'm using SQLite, and run into this issue repeatedly.
>
> > > I've posted specific details on 
> > > StackOverflow:http://stackoverflow.com/q/8565024/165673

Reply via email to