Open lidh04 opened 4 years ago
@lidh04 - I run into the same problem today and I suspect it has something to do with:
I copy-pasted a docker-compose.yml file from the Internet and it was linking mysql:5.7
(that version did not seem to like mito
s queries); I then switched to mysql:8.0.21
and the error disappeared.
CL-USER> (mito:connect-toplevel :mysql :database-name "v" :username "" :password "****")
<DBD.MYSQL: {1007644EA3}>
CL-USER> (mito:deftable user() ((name :col-type (:varchar 64)) (email :col-type (or (:varchar 128) :null))))
CL-USER> (mito:table-definition 'user) (#<SXQL-STATEMENT: CREATE TABLE user ( id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(64) NOT NULL, email VARCHAR(128), created_at TIMESTAMP, updated_at TIMESTAMP )>) CL-USER> (mapc #'mito:execute-sql (mito:table-definition 'user)) ; Debugger entered on #<DBI.ERROR: {1005254273}>
[1] CL-USER>
DB Error: Invalid default value for 'updated_at' (Code: 1067)
[Condition of type DBI.ERROR:]
Restarts: 0: [RETRY] Retry SLY mREPL evaluation request. 1: [*ABORT] Return to SLY's top level. 2: [ABORT] abort thread (#<THREAD "sly-channel-1-mrepl-remote-1" RUNNING {1002773FF3}>)
Backtrace: 0: ((:METHOD DBI.DRIVER:EXECUTE-USING-CONNECTION (DBD.MYSQL: DBD.MYSQL: T)) #<DBD.MYSQL: {1001897A23}> #<DBD.MYSQL: {10052530..
1: ((:METHOD DBI.DRIVER:DO-SQL (DBI.DRIVER: STRING)) # # # #) [fast-method,more]
2: ((:METHOD MITO.DB:EXECUTE-SQL (SXQL.SQL-TYPE:SQL-STATEMENT)) #<SXQL-STATEMENT: CREATE TABLE # #<SXQL-STATEMENT: CREATE TABLE )
7: (EVAL (MAPC (FUNCTION MITO.DB:EXECUTE-SQL) (MITO.DAO.VIEW:TABLE-DEFINITION (QUOTE USER))))
8: ((LAMBDA NIL :IN SLYNK-MREPL::MREPL-EVAL-1))
--more--
user
( ..) [fast-method] 3: ((SB-PCL::EMF MITO.DB:EXECUTE-SQL) #user
( ..) 4: (SB-IMPL::MAP1 #<STANDARD-GENERIC-FUNCTION MITO.DB:EXECUTE-SQL (3)> (NIL) NIL T) 5: (MAPC #<STANDARD-GENERIC-FUNCTION MITO.DB:EXECUTE-SQL (3)> (#<SXQL-STATEMENT: CREATE TABLEuser
( ..) 6: (SB-INT:SIMPLE-EVAL-IN-LEXENV (MAPC (FUNCTION MITO.DB:EXECUTE-SQL) (MITO.DAO.VIEW:TABLE-DEFINITION (QUOTE USER))) #