Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
为 GitLab 提交贡献
登录/注册
切换导航
H
h2database
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
Administrator
h2database
Commits
817b0944
Unverified
提交
817b0944
authored
7 年前
作者:
Evgenij Ryazanov
提交者:
GitHub
7 年前
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #1036 from katzyn/merge_using
Remove unexpected check for column count in MergeUsing
上级
ea42b4a7
0b38a3e0
显示空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
51 行增加
和
3 行删除
+51
-3
changelog.html
h2/src/docsrc/html/changelog.html
+8
-0
MergeUsing.java
h2/src/main/org/h2/command/dml/MergeUsing.java
+0
-3
mergeUsing.sql
h2/src/test/org/h2/test/scripts/dml/mergeUsing.sql
+43
-0
没有找到文件。
h2/src/docsrc/html/changelog.html
浏览文件 @
817b0944
...
...
@@ -21,6 +21,14 @@ Change Log
<h2>
Next Version (unreleased)
</h2>
<ul>
<li>
Issue #1034: MERGE USING should not require the same column count in tables
</li>
<li>
PR #1033: Fix issues with BUILTIN_ALIAS_OVERRIDE=1
</li>
<li>
PR #1031: Drop schema rights together with schema
</li>
<li>
PR #1029: No need to remove orphaned LOBs when the db is read-only
</li>
<li>
Issue #1027: Add support for fully qualified names in MySQL compatibility mode
</li>
<li>
Issue #178: INSERT ON DUPLICATE KEY UPDATE returns wrong generated key
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/command/dml/MergeUsing.java
浏览文件 @
817b0944
...
...
@@ -399,9 +399,6 @@ public class MergeUsing extends Prepared {
}
}
else
{
query
.
prepare
();
if
(
query
.
getColumnCount
()
!=
columns
.
length
)
{
throw
DbException
.
get
(
ErrorCode
.
COLUMN_COUNT_DOES_NOT_MATCH
);
}
}
int
embeddedStatementsCount
=
0
;
...
...
This diff is collapsed.
Click to expand it.
h2/src/test/org/h2/test/scripts/dml/mergeUsing.sql
浏览文件 @
817b0944
...
...
@@ -72,3 +72,46 @@ DROP SCHEMA SOURCESCHEMA CASCADE;
DROP
SCHEMA
DESTSCHEMA
CASCADE
;
>
ok
CREATE
TABLE
SOURCE_TABLE
(
ID
BIGINT
PRIMARY
KEY
,
C1
INT
NOT
NULL
);
>
ok
INSERT
INTO
SOURCE_TABLE
VALUES
(
1
,
10
),
(
2
,
20
),
(
3
,
30
);
>
update
count
:
3
CREATE
TABLE
DEST_TABLE
(
ID
BIGINT
PRIMARY
KEY
,
C1
INT
NOT
NULL
,
C2
INT
NOT
NULL
);
>
ok
INSERT
INTO
DEST_TABLE
VALUES
(
2
,
200
,
2000
),
(
4
,
400
,
4000
);
>
update
count
:
2
MERGE
INTO
DEST_TABLE
USING
SOURCE_TABLE
ON
(
DEST_TABLE
.
ID
=
SOURCE_TABLE
.
ID
)
WHEN
MATCHED
THEN
UPDATE
SET
DEST_TABLE
.
C1
=
SOURCE_TABLE
.
C1
,
DEST_TABLE
.
C2
=
100
;
>
update
count
:
1
SELECT
*
FROM
DEST_TABLE
;
>
ID
C1
C2
>
-- --- ----
>
2
20
100
>
4
400
4000
>
rows
:
2
MERGE
INTO
DEST_TABLE
D
USING
SOURCE_TABLE
S
ON
(
D
.
ID
=
S
.
ID
)
WHEN
MATCHED
THEN
UPDATE
SET
D
.
C1
=
S
.
C1
,
D
.
C2
=
100
WHEN
NOT
MATCHED
THEN
INSERT
(
ID
,
C1
,
C2
)
VALUES
(
S
.
ID
,
S
.
C1
,
1000
);
>
update
count
:
3
SELECT
*
FROM
DEST_TABLE
;
>
ID
C1
C2
>
-- --- ----
>
1
10
1000
>
2
20
100
>
3
30
1000
>
4
400
4000
>
rows
:
4
DROP
TABLE
SOURCE_TABLE
;
>
ok
DROP
TABLE
DEST_TABLE
;
>
ok
This diff is collapsed.
Click to expand it.
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论