我正在将我现在使用sql server的系统中的一些表转换为mysql,并且我在mysql中有一个问题如何创建一个包含TIMESTAMPDIFF的表
Sql Server表:
dynamic message = new JObject();
message.ErrorMessage = "";
message.ErrorDetails = new JObject();
message.ErrorDetails.ErrorId = 111;
message.ErrorDetails.Description = new JObject();
message.ErrorDetails.Description.Short = 0;
Console.WriteLine(message.ToString());
// Ouputs:
// {
// "ErrorMessage": "",
// "ErrorDetails": {
// "ErrorID": 111,
// "Description": {
// "Short": 0
// .....
Mysql表:
CREATE TABLE [dbo].[login_user](
[idx] [int] IDENTITY(1,1) NOT NULL,
[client_id] [int] NOT NULL,
[Login] [datetime] NULL,
[Logout] [datetime] NULL,
[Time] AS (datediff(second,[Login],[Logout])),
由于TIMESTAMPDIFF,在创建表时如何处理这个问题,是不是正在创建mysql中的表?
我的mysql是版本5.7.20
图片错误:
答案 0 :(得分:0)
以下语法适用于MySQL 5.7
:
CREATE TABLE IF NOT EXISTS `login_user` (
`idx` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
`client_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
`login` DATETIME NULL,
`Logout` DATETIME NULL,
`Time` INT(11) AS (TIMESTAMPDIFF(second,`login`,`Logout`)),
PRIMARY KEY (`idx`)
) ENGINE=MyISAM;