   `user_id`            integer NOT NULL,
   `campaign_id`        integer NOT NULL,
   `message_id`         varchar(191) NOT NULL,
-  `source`             varchar(191),
-  `sending_account_id` varchar(191),
-  `destination`        varchar(191),
-  `created_at`         datetime NOT NULL,
+  `source`             varchar(191) NOT NULL,
+  `sending_account_id` varchar(191) NOT NULL,
+  `destination`        varchar(191) NOT NULL,
+  `created_at`         datetime(6) NOT NULL,
   FOREIGN KEY (`user_id`) REFERENCES users(`id`),
   FOREIGN KEY (`campaign_id`) REFERENCES campaigns(`id`)
 ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

  `id`          integer primary key AUTO_INCREMENT NOT NULL,
  `campaign_id` integer NOT NULL,
  `user_id`     integer NOT NULL,
  `ip_address`  varchar(50),
  `user_agent`  varchar(191),
  `created_at`  datetime NOT NULL,
  FOREIGN KEY (`user_id`) REFERENCES users(`id`),
  FOREIGN KEY (`campaign_id`) REFERENCES campaigns(`id`)
) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

  `id`                     integer primary key AUTO_INCREMENT NOT NULL,
  `campaign_id`            integer NOT NULL,
  `user_id`                integer NOT NULL,
  `recipient`              varchar(191) NOT NULL,
  `processing_time_millis` integer NOT NULL,
  `smtp_response`          varchar(191) NOT NULL,
  `reporting_mta`          varchar(191) NOT NULL,
  `remote_mta_ip`          varchar(50) NOT NULL,
  `created_at`             datetime(6) NOT NULL,
  FOREIGN KEY (`user_id`) REFERENCES users(`id`),
  FOREIGN KEY (`campaign_id`) REFERENCES campaigns(`id`)
) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
