gpt4 book ai didi

sql-server - SQL Server 中有没有一种方法可以在不使用函数的情况下从另一个插入语句生成插入?

转载 作者:行者123 更新时间:2023-12-02 01:41:29 27 4
gpt4 key购买 nike

我有一个翻译表,它几乎与数据库中的每个表相关。我每次都需要填充这张表。我在其中一个表中插入了一个。在 ORACLE 中我是这样做的:

 INSERT  INTO M_ANYTABLE
( ID_ANYTABLE ,
TEXT ,
DATE ,
TRANS_ID

)

VALUES ( 'PEPE' ,
'PEPE' ,
SYSDATE ,
FN_TRD_NOCOMMIT('TEXT TRANSLATE')
);

函数 FN_TRD_NOCOMMIT 在翻译表中插入。

我无法在 SQLServer 中复制它,因为函数无法以任何方式更改数据库。我修复了这个制作触发器(每个表一个)。虽然我知道这不是一个优雅的解决方案。

我想问的是,是否有人可以提供更好的方法来通过原始插入语句(上文)或您部署的任何其他解决方案来通过函数或任何不暗示使用一个触发器来进行插入对于每个表。有什么想法吗?

希望我的观点正确。对不起,如果英语不好。提前致谢。

最佳答案

我不确定我是否理解正确,但您可以使用 OUTPUT 来表示:

CREATE TABLE #test
(
ID_ANYTABLE VARCHAR(123),
TEXT VARCHAR(123) ,
DATE DATETIME
);

CREATE TABLE #test2
(
ID_ANYTABLE VARCHAR(123),
TEXT VARCHAR(123) ,
DATE DATETIME
)

INSERT INTO #test
( ID_ANYTABLE ,
TEXT ,
DATE
)
OUTPUT INSERTED.ID_ANYTABLE, INSERTED.TEXT, INSERTED.DATE INTO #test2
VALUES ( 'PEPE' ,
'PEPE' ,
GETDATE()
);

SELECT * FROM #test
SELECT * FROM #test2

关于sql-server - SQL Server 中有没有一种方法可以在不使用函数的情况下从另一个插入语句生成插入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28303031/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com