Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql CLSQL时间戳列类型_Mysql_Common Lisp_Sbcl_Clsql - Fatal编程技术网

Mysql CLSQL时间戳列类型

Mysql CLSQL时间戳列类型,mysql,common-lisp,sbcl,clsql,Mysql,Common Lisp,Sbcl,Clsql,我将CLSQL与MySQL结合使用。我必须向create table传递哪些关键字组合才能给它一个具有timestamp列类型的列 (create-table [foo] `(([bar] timestamp))) 无法识别(它只创建一个varchar 255列,如果不指定列类型,这是默认值)。根据,wall time应该创建一个timestamp列,但只创建一个datetime(这与MySQLtimestamp不同) 另外,还有比我上面链接的更好的CLSQL列类型引用吗?为什么不使用date

我将CLSQL与MySQL结合使用。我必须向
create table
传递哪些关键字组合才能给它一个具有timestamp列类型的列

(create-table [foo] `(([bar] timestamp)))
无法识别(它只创建一个varchar 255列,如果不指定列类型,这是默认值)。根据,
wall time
应该创建一个timestamp列,但只创建一个
datetime
(这与MySQL
timestamp
不同)


另外,还有比我上面链接的更好的CLSQL列类型引用吗?

为什么不使用datetime?我发现的唯一区别是范围。 看一看

例如,如果您查看clsql的源代码,您将看到

  (defmethod database-get-type-specifier ((type (eql 'wall-time)) args database
                                           (db-type (eql :mysql)))
    (declare (ignore args database))
     "DATETIME")

这意味着你的代码一切正常。你用什么样的引号“后引号”或“简单引号”

MySQL
TIMESTAMP
可以设置为每次记录为
update
d时自动更新。必须明确设置
DATETIME
  (defmethod database-get-type-specifier ((type (eql 'wall-time)) args database
                                           (db-type (eql :mysql)))
    (declare (ignore args database))
     "DATETIME")