4

在 Oracle 中,使用 TOAD,我们能够从表中创建插入脚本。

但是,我需要根据每行的值创建一个 UPDATE 脚本

where the CLIENTID is 'blah blah'

最初,我所做的是创建一个包含所有必要数据的 Excel 电子表格,对于每一行,我粘贴了一个

UPDATE TABLE BLAH BLAH SET COLUMN1 = "xxx", COLUMN2 = '' where CLIENT_ID = "123'

..但是我在将电子表格导出到基于文本的 DOS 文件并将其转换为.sqlas 以进行编辑时遇到了一些困难,但它是混乱且不可预测的。

有没有人有更好的想法我可以实施?

4

3 回答 3

2

我通常会这样做:

SELECT 'UPDATE <TABLE_NAME> SET status =''' || status || '''  WHERE id =' || ID ||';'
FROM <TABLE_NAME>
WHERE <condition>
于 2014-03-01T01:33:11.483 回答
2

I haven't seen any feature in Toad that helps write update queries in this fashion. But loading data directly is something that Toad makes very easy.

May be you could do this.

create table tmp_excel_data
( column1 varchar2(100),
  column2 varchar2(100),
  client_id varchar2(100)
);

Use toad to directly load data into this table. The update is simple from this point.

update CLIENT_DATA tgt
  tgt.column1 = (select column1
                  from tmp_excel_data src
                  where tgt.client_id = src.client_id);

--dont forget to commit.

This will also let you cleanse your data (removing dups..for example) if needed.

于 2012-06-26T23:28:45.247 回答
0

使用按钮。它丑陋但有效。

在此处输入图像描述

于 2021-11-12T16:38:27.167 回答