【问题标题】:How to export data of a table as insert query in Teradata SQL assistance如何在 Teradata SQL 助手中将表的数据导出为插入查询
【发布时间】:2016-02-26 09:44:23
【问题描述】:

我是 Teradata 的新手。 我有一个包含大约 600 条记录的表。 我想获取这些记录的插入查询。在 oracle SQL 开发人员中,我曾经将其导出,并且有一个选项为“插入查询”。如何在 Teradata SQL 帮助中实现这一点?

提前致谢

【问题讨论】:

    标签: sql teradata


    【解决方案1】:

    没有内置方法可以使用 SQL 助手为结果集中的所有行获取 INSERT。

    使用CSV-UDF 有一个丑陋的解决方法,例如:

    WITH cte AS 
     (  -- put your select here
       SELECT * FROM dbc.tablesV
     )
    SELECT * 
    FROM TABLE
     (CSV(NEW VARIANT_TYPE( -- you need to list each column of your table
           cte.DataBaseName                  
          ,cte.TABLENAME                     
          ,cte.Version                       
          ,cte.TableKind                     
          ,cte.ProtectionType                
          ,cte.JournalFlag                   
          ,cte.CreatorName                   
          ,cte.RequestText                   
          ,cte.CommentString                 
          ,cte.ParentCount                   
          ,cte.ChildCount                    
          ,cte.NamedTblCheckCount            
          ,cte.UnnamedTblCheckExist          
          ,cte.PrimaryKeyIndexId             
          ,cte.RepStatus                     
          ,cte.CreateTimeStamp               
          ,cte.LastAlterName                 
          ,cte.LastAlterTimeStamp            
          ,cte.RequestTxtOverflow            
          ,cte.AccessCount                   
          ,cte.LastAccessTimeStamp           
          ,cte.UtilVersion                   
          ,cte.QueueFlag                     
          ,cte.CommitOpt                     
          ,cte.TransLog                      
          ,cte.CheckOpt                      
          ,cte.TemporalProperty              
          ,cte.ResolvedCurrent_Date          
          ,cte.ResolvedCurrent_Timestamp     
          ,cte.SystemDefinedJI               
          ,cte.VTQualifier                   
          ,cte.TTQualifier                   
          ,cte.PIColumnCount                 
          ,cte.PartitioningLevels            
          ,cte.LoadProperty                  
          ,cte.CurrentLoadId                 
          ,cte.LoadIdLayout                  
          ,cte.DelayedJI                     
         ), ',', '"')
       RETURNS (op VARCHAR(32000) CHARACTER SET UNICODE)
     ) AS dt;
    

    否则你必须使用不同的工具...

    【讨论】:

      【解决方案2】:

      由于您只有 600 条记录,将 SQL*Assistant 导出到 Excel 或 Access 并使用 Office 工具进行操作不是更容易吗?

      另一种选择 - 在 SQL Server Management Studio 中将 Teradata 连接为链接服务器,并在其中使用“脚本作为插入”功能。

      【讨论】:

        猜你喜欢
        • 2016-05-10
        • 2019-02-05
        • 2014-12-18
        • 2015-01-31
        • 2018-03-11
        • 2017-07-19
        • 2018-08-05
        • 2017-05-23
        • 2020-12-07
        相关资源
        最近更新 更多