MERGE INTO DbVisualizer无法正常工作

时间:2015-03-19 20:21:39

标签: sql-server merge dbvisualizer

Heelo everyone,

我尝试使用合并INTO从另一个表example here更新我的表格:

MERGE INTO locations l USING new_locations n         
ON (l.customer_id = n.customer_id              
AND l.location_x = n.location_x 
AND             l.location_y = n.location_y)   
WHEN MATCHED THEN UPDATE SET location_count = l.location_count + n.location_count   
WHEN NOT MATCHED THEN INSERT (customer_id, location_x, location_y, location_count, location_name)        
VALUES (n.customer_id, n.location_x, n.location_y, n.location_count, n.location_name);

我使用MSSQL并通过DbVisualizer和ODBC brideg连接。

当我运行命令时,它声明:一般错误;

经过一番搜索,我发现here 您必须在VbVisualizer中将此格式用于Mere:

@delimiter %%;
MERGE x AS y<code here>
;
@delimiter ;%% 

当我这样做时程序依旧:解析脚本。 我试图更改DbVisualizer的默认语句分隔符,但仍然没有运气

/ ***********************************编辑********** ****************** / Parsing error

如果我删除了我的

09:27:46  [MERGE - 0 row(s), 0.000 secs]  [Error Code: 10713, SQL State: 37000]  [Microsoft][ODBC SQL Server Driver][SQL Server]A MERGE statement must be terminated by a semi-colon (;).

如果我使用工具属性Statement Delimeters并用GO替换(;)我得到以下错误

09:29:24  [MERGE - 0 row(s), 0.000 secs]  [Error Code: 0, SQL State: S1000]  General error

/ *******************************结束编辑************* *************** /

你可以帮帮我吗? 感谢

1 个答案:

答案 0 :(得分:0)

它似乎因为Merge是一个transact / SQL查询,它需要多行来提交DB可视化工具在免费版本中不允许的事务:(

希望我能找到替代方案。