How to add a date column to a table with current date as default value?

sqlite

Solution

Use the create table instead of altering the table. If there are values inside you'll have this kind of a problem. See

http://sqlite.1065341.n5.nabble.com/Can-t-insert-timestamp-field-with-value-CURRENT-TIME-td42729.html

all the best

Problem

Where I can see which default columns SQLite table will have after creating? I need a column with datetime which has default value of time when data added to the table.\ Now I'm trying: ``` ALTER TABLE recipes ADD COLUMN timestamp DATE DEFAULT (datetime('now','localtime')); ``` And I'm obtaining the following message: ``` SQLiteManager: Likely SQL syntax error: ALTER TABLE recipes ADD COLUMN timestamp DATE DEFAULT (datetime('now','localtime')); [ Cannot add a column with non-constant default ] Exception Name: NS_ERROR_FAILURE Exception Message: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [mozIStorageConnection.createStatement] ```

Original source

Related problems