Replace Into in SQL Server 2008(在 SQL Server 2008 中替换为)
问题描述
我尝试进行迁移,但这个查询有问题:
I try to do a migration but i have problem with this query :
$DB->query("replace into periodetojour(idperiode,idjour,heure)
values('".addslashes($idperiode)."','2','".addslashes($mardi)."')");
我看到 REPLACE INTO
不能在 SQL Server 2008 中使用,我必须使用 MERGE INTO
I saw that REPLACE INTO
can't be used in SQL Server 2008 and that i hav to use MERGE INTO
我的问题是我没有找到任何使用 MERGE INTO
工作的查询,所以我可能没有很好地使用它.您知道如何使用 MERGE INTO 更改它吗?是否有义务在 SQL Server 2008 中更改它?
My problem is that i don't find any of my query which is working by using MERGE INTO
so i am probably not using it well. Do you have any idea how can i change it with MERGE INTO and is it an obligation to change it in SQL Server 2008 ?
感谢您的回答.
推荐答案
在您的情况下,MERGE
语句如下所示:
In your case, the MERGE
statement would look like this:
$DB->query("MERGE INTO periodetojour dst
USING (
SELECT '".addslashes($idperiode)."' idperiode,
'2' idjour,
'".addslashes($mardi)."' heure
) src
ON src.idperiode = dst.idperiode
WHEN MATCHED THEN UPDATE SET
dst.idjour = src.idjour,
dst.heure = src.heure
WHEN NOT MATCHED THEN INSERT (idperiode, idjour, heure)
VALUES(src.idperiode, src.idjour, src.heure)");
这是假设 idperiode
是您的主键.如果主键由 (idperiode, idjour)
组成,则必须调整 ON
子句以及 WHEN MATCHED THEN UPDATE SET
相应的子句:
This is assuming that idperiode
is your primary key. If the primary key is composed of (idperiode, idjour)
you'll have to adapt the ON
clause as well as the WHEN MATCHED THEN UPDATE SET
clause accordingly:
-- [...]
ON src.idperiode = dst.idperiode
AND src.idjour = dst.idjour
WHEN MATCHED THEN UPDATE SET
dst.heure = src.heure
-- [...]
这篇关于在 SQL Server 2008 中替换为的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 SQL Server 2008 中替换为


- 远程 mySQL 连接抛出“无法使用旧的不安全身份验证连接到 MySQL 4.1+"来自 XAMPP 的错误 2022-01-01
- 如何将 SonarQube 6.7 从 MySQL 迁移到 postgresql 2022-01-01
- 在SQL中,如何为每个组选择前2行 2021-01-01
- 以一个值为轴心,但将一行上的数据按另一行分组? 2022-01-01
- 更改自动增量起始编号? 2021-01-01
- 如何使用 pip 安装 Python MySQLdb 模块? 2021-01-01
- 导入具有可变标题的 Excel 文件 2021-01-01
- SQL 临时表问题 2022-01-01
- 如何将 Byte[] 插入 SQL Server VARBINARY 列 2021-01-01
- 使用 Oracle PL/SQL developer 生成测试数据 2021-01-01