【问题标题】:How to Create a table in SQL Server to set Email Address to Active / Inactive [closed]如何在 SQL Server 中创建表以将电子邮件地址设置为活动/非活动 [关闭]
【发布时间】:2019-08-09 15:08:33
【问题描述】:

这是我正在尝试做的总结。

  1. 用户在初始用户设置时输入电子邮件地址
  2. 该地址设置为非活动,并且不会单独或作为订阅者组的一部分向其发送任何洞察报告
  3. 一封带有激活链接的确认电子邮件将发送到该地址
  4. 点击链接后,电子邮件地址设置为活动状态,可以发送洞察报告
  5. 如果用户修改了现有的电子邮件地址,新地址将设置为无效(返回步骤 2)

我在这里的主要困难是弄清楚如何创建一个能够将初始电子邮件记录为空/非活动的表。

我还认为我可以使用触发器向用户提交电子邮件。

【问题讨论】:

  • “我还认为我可以使用触发器向用户提交电子邮件。”也许您可以澄清您对此的确切需求
  • @codein 很抱歉含糊其辞,这里有点新意。我的想法是实现一个触发器,当用户输入他们的电子邮件时,它会触发一个电子邮件验证链接。最终,在创建表之后,我的下一个项目是想办法向用户发送电子邮件以验证它们。
  • 旁白:与其使用bit 记录电子邮件地址的激活,不如使用可为空的datetime,例如ActivationConfirmedOn。它为您提供了更多信息,例如如果您想检查激活与更新的条款和条件,以确定是否要经历另一个激活周期。

标签: c# .net sql-server tsql


【解决方案1】:

您可以创建一个具有活动/不活动标志的表,默认情况下为 NULL,如下所示:

CREATE TABLE Subscription (
    id      INT IDENTITY(1,1),
    name    varchar(100),
    email   nvarchar(100),
    isActive bit DEFAULT NULL  --0 inactive, 1 active, for example
)

如果您希望将值:“inactive”作为默认值,请在创建表时尝试isActive varchar(10) DEFAULT 'inactive'

【讨论】:

    猜你喜欢
    • 2018-02-18
    • 2017-12-28
    • 2012-07-20
    • 1970-01-01
    • 2018-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-17
    相关资源
    最近更新 更多