Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.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
Sql server 同步两个联接表_Sql Server - Fatal编程技术网

Sql server 同步两个联接表

Sql server 同步两个联接表,sql-server,Sql Server,我有以下要求: 表Client有两列ClientID(Int)和Email ID(Varchar 100)。ClientID是自动递增值为1的标识列 表指示器有两列ClientID(Int)和Paid(Char 1) 这两个表都与键clientID连接 我正在使用MS SQL 2008数据库。您能告诉我如何在客户端中创建新记录后立即使用clientID自动更新指示符表吗 感谢您的帮助。您可以使用触发器来完成此操作,或者您可以对数据结构进行反规范化(如果您在指示器中只有付费的,我认为付费的是客户端

我有以下要求:

  • 表Client有两列ClientID(Int)和Email ID(Varchar 100)。ClientID是自动递增值为1的标识列

  • 表指示器有两列ClientID(Int)和Paid(Char 1)

  • 这两个表都与键clientID连接

    我正在使用MS SQL 2008数据库。您能告诉我如何在客户端中创建新记录后立即使用clientID自动更新指示符表吗


    感谢您的帮助。

    您可以使用触发器来完成此操作,或者您可以对数据结构进行反规范化(如果您在
    指示器中只有
    付费的
    ,我认为
    付费的
    客户端
    的简单属性)并将其移动到
    客户端

    您可以像这样使用触发器:

    CREATE TRIGGER dbo.TrigerName
    ON Client AFTER INSERT
    AS
    BEGIN
        UPDATE I
        SET Paid = <your value>
        FROM Indicator I
           JOIN inserted ins
               ON I.ClientID = ins.ClientId
    END
    
    创建触发器dbo.TrigerName
    插入后在客户端上
    作为
    开始
    更新一
    设置已支付=
    来自指标一
    连接插入的插件
    ON I.ClientID=ins.ClientID
    结束
    
    您可以通过使用触发器来完成。您可以提供一个伪代码来解决这个问题吗?还是只使用最后插入的id?您使用的是ORM还是纯SQL?谢谢您的及时回复。