Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Talend中的动态SQL错误_Sql_Sql Server_Database_Talend - Fatal编程技术网

Talend中的动态SQL错误

Talend中的动态SQL错误,sql,sql-server,database,talend,Sql,Sql Server,Database,Talend,我在学泰伦德。我正试图连接到一个数据库,并从中提取表。 我已经成功创建了连接元数据,并且能够连接到SQL Server数据库 但是,当我将连接拖放到作业中(作为TSMSSQLSINPUT)并运行作业时,会出现以下错误: Exception in component tMSSqlInput_1 [FATAL]: talend_train.engia_test_0_1.ENGIA_Test - tMSSqlInput_1 An object or column name is missing o

我在学泰伦德。我正试图连接到一个数据库,并从中提取表。 我已经成功创建了连接元数据,并且能够连接到SQL Server数据库

但是,当我将连接拖放到作业中(作为TSMSSQLSINPUT)并运行作业时,会出现以下错误:

Exception in component tMSSqlInput_1

[FATAL]: talend_train.engia_test_0_1.ENGIA_Test - tMSSqlInput_1 An object or 
column name is missing or empty. For SELECT INTO statements, verify each 
column has a name. For other statements, look for empty alias names. Aliases 
defined as "" or [] are not allowed. Change the alias to a valid name.
java.sql.SQLException: An object or column name is missing or empty. For 
SELECT INTO statements, verify each column has a name. For other statements, 
look for empty alias names. Aliases defined as "" or [] are not allowed. 
Change the alias to a valid name.
我猜动态查询(使用上下文变量)有问题:

双引号肯定有问题,我不知道在哪里或如何

此外,当我尝试运行查询以获得预览时,我得到的结果如下:
有什么想法吗?

我把你的文字复制到我的IDE中,它看起来引用正确,假设它是一个抄写错误,而不是+“在它之前。如果这是一个引用问题,您可能会遇到SQL语法/解析错误,而不是找不到列。尝试将具体值替换到字符串中,并验证是否仍然收到错误。是否尝试不使用\“字符?我通常不使用它,使用类似“SELECT”+context.Engica_Connect_Schema+”.CM_AU_TA.AU_TA_UN FROM“+context.Engica_Connect_Schema+”.CM_AU_TA”的表达式“我试过了,语法错误消息仍然存在。顺便说一下,这个查询是自动生成的,不是我写的。因此,再想想,我怀疑这方面有错误。我还尝试提取另一个表,同样的。我应该补充一点,当我不使用上下文变量时,查询可以工作。找到它:在上下文组中有一个“schema”字段仍然为空。我以为它是自动填充的。我是手工做的,效果很好。
"SELECT \""+context.Engica_Connect_Schema+"\".CM_AU_TA.AU_TA_UN,
    \""+context.Engica_Connect_Schema+"\".CM_AU_TA.AU_TA_TN,
    \""+context.Engica_Connect_Schema+"\".CM_AU_TA.AU_TA_PK,
    \""+context.Engica_Connect_Schema+"\".CM_AU_TA.AU_TA_SK,
    \""+context.Engica_Connect_Schema+"\".CM_AU_TA.AU_TA_FN,
    \""+context.Engica_Connect_Schema+"\".CM_AU_TA.AU_TA_OV,
    \""+context.Engica_Connect_Schema+"\".CM_AU_TA.AU_TA_NV,
    \""+context.Engica_Connect_Schema+"\".CM_AU_TA.AU_TA_ID,
    \""+context.Engica_Connect_Schema+"\".CM_AU_TA.AU_TA_DT,
    \""+context.Engica_Connect_Schema+"\".CM_AU_TA.SY_FI_DA,
    \""+context.Engica_Connect_Schema+"\".CM_AU_TA.SQL_TIMESTAMP"
+"
   FROM \""+context.Engica_Connect_Schema+"\".CM_AU_TA"