MySQL being stupid x.x - #3

This commit is contained in:
Azareal 2018-10-07 11:33:03 +10:00
parent b6220d03d3
commit ad61b5d8b2
11 changed files with 15 additions and 14 deletions

View File

@ -141,9 +141,10 @@ func (adapter *MysqlAdapter) parseColumn(column DBTableColumn) (col DBTableColum
// Make it easier to support Cassandra in the future // Make it easier to support Cassandra in the future
if column.Type == "createdAt" { if column.Type == "createdAt" {
column.Type = "datetime" column.Type = "datetime"
if column.Default == "" { // MySQL doesn't support this x.x
/*if column.Default == "" {
column.Default = "UTC_TIMESTAMP()" column.Default = "UTC_TIMESTAMP()"
} }*/
} else if column.Type == "json" { } else if column.Type == "json" {
column.Type = "text" column.Type = "text"
} }
@ -154,9 +155,9 @@ func (adapter *MysqlAdapter) parseColumn(column DBTableColumn) (col DBTableColum
// TODO: Exclude the other variants of text like mediumtext and longtext too // TODO: Exclude the other variants of text like mediumtext and longtext too
if column.Default != "" && column.Type != "text" { if column.Default != "" && column.Type != "text" {
end = " DEFAULT " end = " DEFAULT "
if column.Type == "datetime" && column.Default[len(column.Default)-1] == ')' { /*if column.Type == "datetime" && column.Default[len(column.Default)-1] == ')' {
end += column.Default end += column.Default
} else if adapter.stringyType(column.Type) && column.Default != "''" { } else */if adapter.stringyType(column.Type) && column.Default != "''" {
end += "'" + column.Default + "'" end += "'" + column.Default + "'"
} else { } else {
end += column.Default end += column.Default

View File

@ -3,6 +3,6 @@ CREATE TABLE `likes` (
`targetItem` int not null, `targetItem` int not null,
`targetType` varchar(50) DEFAULT 'replies' not null, `targetType` varchar(50) DEFAULT 'replies' not null,
`sentBy` int not null, `sentBy` int not null,
`createdAt` datetime DEFAULT UTC_TIMESTAMP() not null, `createdAt` datetime not null,
`recalc` tinyint DEFAULT 0 not null `recalc` tinyint DEFAULT 0 not null
); );

View File

@ -2,6 +2,6 @@ CREATE TABLE `polls_votes` (
`pollID` int not null, `pollID` int not null,
`uid` int not null, `uid` int not null,
`option` int DEFAULT 0 not null, `option` int DEFAULT 0 not null,
`castAt` datetime DEFAULT UTC_TIMESTAMP() not null, `castAt` datetime not null,
`ipaddress` varchar(200) DEFAULT '0.0.0.0.0' not null `ipaddress` varchar(200) DEFAULT '0.0.0.0.0' not null
) CHARSET=utf8mb4 COLLATE utf8mb4_general_ci; ) CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;

View File

@ -5,6 +5,6 @@ CREATE TABLE `registration_logs` (
`failureReason` varchar(100) not null, `failureReason` varchar(100) not null,
`success` bool DEFAULT 0 not null, `success` bool DEFAULT 0 not null,
`ipaddress` varchar(200) not null, `ipaddress` varchar(200) not null,
`doneAt` datetime DEFAULT UTC_TIMESTAMP() not null, `doneAt` datetime not null,
primary key(`rlid`) primary key(`rlid`)
); );

View File

@ -3,7 +3,7 @@ CREATE TABLE `replies` (
`tid` int not null, `tid` int not null,
`content` text not null, `content` text not null,
`parsed_content` text not null, `parsed_content` text not null,
`createdAt` datetime DEFAULT UTC_TIMESTAMP() not null, `createdAt` datetime not null,
`createdBy` int not null, `createdBy` int not null,
`lastEdit` int DEFAULT 0 not null, `lastEdit` int DEFAULT 0 not null,
`lastEditBy` int DEFAULT 0 not null, `lastEditBy` int DEFAULT 0 not null,

View File

@ -3,6 +3,6 @@ CREATE TABLE `revisions` (
`content` text not null, `content` text not null,
`contentID` int not null, `contentID` int not null,
`contentType` varchar(100) DEFAULT 'replies' not null, `contentType` varchar(100) DEFAULT 'replies' not null,
`createdAt` datetime DEFAULT UTC_TIMESTAMP() not null, `createdAt` datetime not null,
primary key(`reviseID`) primary key(`reviseID`)
) CHARSET=utf8mb4 COLLATE utf8mb4_general_ci; ) CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;

View File

@ -3,7 +3,7 @@ CREATE TABLE `topics` (
`title` varchar(100) not null, `title` varchar(100) not null,
`content` text not null, `content` text not null,
`parsed_content` text not null, `parsed_content` text not null,
`createdAt` datetime DEFAULT UTC_TIMESTAMP() not null, `createdAt` datetime not null,
`lastReplyAt` datetime not null, `lastReplyAt` datetime not null,
`lastReplyBy` int not null, `lastReplyBy` int not null,
`createdBy` int not null, `createdBy` int not null,

View File

@ -6,7 +6,7 @@ CREATE TABLE `users` (
`group` int not null, `group` int not null,
`active` boolean DEFAULT 0 not null, `active` boolean DEFAULT 0 not null,
`is_super_admin` boolean DEFAULT 0 not null, `is_super_admin` boolean DEFAULT 0 not null,
`createdAt` datetime DEFAULT UTC_TIMESTAMP() not null, `createdAt` datetime not null,
`lastActiveAt` datetime not null, `lastActiveAt` datetime not null,
`session` varchar(200) DEFAULT '' not null, `session` varchar(200) DEFAULT '' not null,
`last_ip` varchar(200) DEFAULT '0.0.0.0.0' not null, `last_ip` varchar(200) DEFAULT '0.0.0.0.0' not null,

View File

@ -9,6 +9,6 @@ CREATE TABLE `users_2fa_keys` (
`scratch6` varchar(50) not null, `scratch6` varchar(50) not null,
`scratch7` varchar(50) not null, `scratch7` varchar(50) not null,
`scratch8` varchar(50) not null, `scratch8` varchar(50) not null,
`createdAt` datetime DEFAULT UTC_TIMESTAMP() not null, `createdAt` datetime not null,
primary key(`uid`) primary key(`uid`)
) CHARSET=utf8mb4 COLLATE utf8mb4_general_ci; ) CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;

View File

@ -2,7 +2,7 @@ CREATE TABLE `users_groups_scheduler` (
`uid` int not null, `uid` int not null,
`set_group` int not null, `set_group` int not null,
`issued_by` int not null, `issued_by` int not null,
`issued_at` datetime DEFAULT UTC_TIMESTAMP() not null, `issued_at` datetime not null,
`revert_at` datetime not null, `revert_at` datetime not null,
`temporary` boolean not null, `temporary` boolean not null,
primary key(`uid`) primary key(`uid`)

View File

@ -3,7 +3,7 @@ CREATE TABLE `users_replies` (
`uid` int not null, `uid` int not null,
`content` text not null, `content` text not null,
`parsed_content` text not null, `parsed_content` text not null,
`createdAt` datetime DEFAULT UTC_TIMESTAMP() not null, `createdAt` datetime not null,
`createdBy` int not null, `createdBy` int not null,
`lastEdit` int DEFAULT 0 not null, `lastEdit` int DEFAULT 0 not null,
`lastEditBy` int DEFAULT 0 not null, `lastEditBy` int DEFAULT 0 not null,