Database 如何在不中断报表的情况下重命名Tableau数据源中的列?

Database 如何在不中断报表的情况下重命名Tableau数据源中的列?,database,database-connection,rename,tableau-api,Database,Database Connection,Rename,Tableau Api,我面临的挑战是更改数据仓库中的一列,该列会影响一个tableau数据源,然后影响多个报表。 如果我重命名该列,报告本身会声明该列不再存在,并抛出一个错误。将多个报告附加到此数据源意味着我需要打开所有报告并手动更改它们 +----------+----------+-----------+----------------+----------+ | column 1 | column 2 | change -> | column renamed | column 2 | +---------

我面临的挑战是更改数据仓库中的一列,该列会影响一个tableau数据源,然后影响多个报表。
如果我重命名该列,报告本身会声明该列不再存在,并抛出一个错误。将多个报告附加到此数据源意味着我需要打开所有报告并手动更改它们

+----------+----------+-----------+----------------+----------+
| column 1 | column 2 | change -> | column renamed | column 2 |
+----------+----------+           +----------------+----------+
| data 1   | data 1   |           | data 1         | data 1   |
+----------+----------+           +----------------+----------+
| data 2   | data 2   |           | data 2         | data 2   |
+----------+----------+           +----------------+----------+
| data 3   | data 3   |           | data 3         | data 3   |
+----------+----------+-----------+----------------+----------+

是否有一种聪明的方法可以在不更改所有报告的情况下重命名列?

如果您想重命名数据库中tableau正在运行摘录(并将其用于报告)的列,则没有“tableau”方法可以不手动修复所有报告(及其元素)

+----------+----------+-----------+----------------+----------+
| column 1 | column 2 | change -> | column renamed | column 2 |
+----------+----------+           +----------------+----------+
| data 1   | data 1   |           | data 1         | data 1   |
+----------+----------+           +----------------+----------+
| data 2   | data 2   |           | data 2         | data 2   |
+----------+----------+           +----------------+----------+
| data 3   | data 3   |           | data 3         | data 3   |
+----------+----------+-----------+----------------+----------+
到目前为止,我找到的唯一方法是直接编辑工作簿文件。Tableau将其工作簿存储在twb或twbx文件中。
您可以在您选择的任何编辑器(如sublime/Atom/notepad)中直接打开这些文件(它们只是XML文件)。
在这些文件中,您可以在数据库中找到要重命名的列。在本例中,我想将Column1重命名为ColumnRename


就像在普通文本编辑器中一样,只需搜索并替换Column1中出现的所有内容,并将其替换为ColumnRename

最后一步是保护它(您应该先使用不同的文件名来测试它是否工作)并在tableau中打开它。
没有任何大的麻烦,你将你的tableau工作簿改编成所有重命名的列。

正如Alex Blakemore在对答案的评论中所说


“如果您手动编辑Tableau工作簿并重命名字段,您可以右键单击侧栏数据窗格中的旧字段,然后选择“替换引用”命令——一个全局搜索和替换命令。”–Alex Blakemore 2017年8月22日16时41分


我自己验证了它的有效性。

如果您手动编辑Tableau工作簿并重命名字段,您可以右键单击侧栏中数据窗格中的旧字段,然后选择“替换引用”命令—一个全局搜索和替换命令。