Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.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
Sql 对象或列名丢失或为空。但不是吗?_Sql_Sql Server_Sql Insert - Fatal编程技术网

Sql 对象或列名丢失或为空。但不是吗?

Sql 对象或列名丢失或为空。但不是吗?,sql,sql-server,sql-insert,Sql,Sql Server,Sql Insert,我正在处理第7组查询,所有查询都在某个表中使用了SELECT*,没有任何问题。由于某些原因,SQL Server中的以下查询引发了错误 对象或列名丢失或为空。选择进入 语句,验证每列是否有名称。对于其他语句,请参见 用于空别名。不允许使用定义为“”或[]的别名。 将别名更改为有效名称 知道会是什么吗? 请注意,在不使用选择进入的情况下运行查询将导致数据按预期返回和显示 Select * into MYDB.MY_TBL SELECT OT.U_ID AS "U_ID" ,R.E AS "

我正在处理第7组查询,所有查询都在某个表中使用了
SELECT*
,没有任何问题。由于某些原因,SQL Server中的以下查询引发了错误

对象或列名丢失或为空。选择进入 语句,验证每列是否有名称。对于其他语句,请参见 用于空别名。不允许使用定义为“”或[]的别名。 将别名更改为有效名称

知道会是什么吗? 请注意,在不使用
选择进入
的情况下运行查询将导致数据按预期返回和显示

Select * into MYDB.MY_TBL
SELECT OT.U_ID AS "U_ID"
    ,R.E AS "E"
    ,R.IR AS "CKT"
    ,A.RI AS "OC"
    ,A.EQ AS "SEQ"
    ,A.HA AS "CHA"
    ,A.A_HA AS "ATE"
    ,A.BIL AS "BIL"
    ,A.CHA AS "CHAA"
    ,A.RAT AS "AMT"
    ,A.PRM AS "PREM"
    ,A.T_CHG AS "RAT"
    ,A.PER AS "LAS"
    ,A.S_BIL AS "BIL_A"
    ,A.CD AS "CDE"
    ,A.CBIL_J AS "BIL_J"
    ,A.AMT_D AS "TB"
    ,A.CRY AS "CTRY"
    ,A.RVW AS "RVW"

FROM MYDB.OTHER_TBL OT
JOIN [LINKEDSERVER\INST,0000].FE.dbo.tblR R
    ON OT.E = R.E
JOIN [LINKEDSERVER\INST,0000].FE.dbo.tblA A
    ON R.IR = A.IR

WHERE OT.U_ID = 'TEST'

您有两个
select
s。我想你只是想:

SELECT OT.U_ID AS "U_ID",
       . . .
INTO MYDB.MY_TBL
FROM . . . 
进入的
应遵循
选择
列列表


或者,您可以使用子查询,但这似乎不是必需的。

在@GordonLinoff示例工作的地方,我意识到我忘记了什么,这是我通常使用的子查询设置

我将提供一个与Gordon方法不同的示例

即:


请注意以下两点:

1.您有两列具有给定的“CHA”别名

2.您似乎需要将查询重写为:

SELECT OT.U_ID AS "U_ID"
    ,R.E AS "E"
    ,R.IR AS "CKT"
    ,A.RI AS "OC"
    ,A.EQ AS "SEQ"
    ,A.HA AS "CHA_DUPLICATE"
    ,A.A_HA AS "ATE"
    ,A.BIL AS "BIL"
    ,A.CHA AS "CHA_DUPLICATE2"
    ,A.RAT AS "AMT"
    ,A.PRM AS "PREM"
    ,A.T_CHG AS "RAT"
    ,A.PER AS "LAS"
    ,A.S_BIL AS "BIL_A"
    ,A.CD AS "CDE"
    ,A.CBIL_J AS "BIL_J"
    ,A.AMT_D AS "TB"
    ,A.CRY AS "CTRY"
    ,A.RVW AS "RVW"

INTO MYDB.MY_TBL -- <<<<<<< NOTE

FROM MYDB.OTHER_TBL OT
JOIN [LINKEDSERVER\INST,0000].FE.dbo.tblR R
    ON OT.E = R.E
JOIN [LINKEDSERVER\INST,0000].FE.dbo.tblA A
    ON R.IR = A.IR

WHERE OT.U_ID = 'TEST'
选择OT.U\U ID作为“U\U ID”
,R.E为“E”
,R.IR为“CKT”
,A.RI为“OC”
,A.等式为“SEQ”
,A.HA为“chau DUPLICATE”
,A.A_HA AS“ATE”
,A.BIL作为“BIL”
,A.CHA为“CHA_DUPLICATE2”
,A.鼠为“AMT”
,A.PRM为“PREM”
,A.T_CHG为“鼠”
,A.根据“LAS”
,A.S_BIL为“BIL_A”
,A.CD作为“CDE”
,A.CBIL_J为“BIL_J”
,A.金额为“TB”
,A.叫“CTRY”
,A.RVW为“RVW”

进入MYDB.MY_TBL——你知道我完全错过了()子查询设置中的
。。。我现在明白了。现在,我只是和它斗争了一个小时,只需要离开再回来。我为我的帖子重新写了名字。请注意,原件中没有重复的名称。问题已经解决,因为我忘记包含我的
FROM()
子查询。
SELECT OT.U_ID AS "U_ID"
    ,R.E AS "E"
    ,R.IR AS "CKT"
    ,A.RI AS "OC"
    ,A.EQ AS "SEQ"
    ,A.HA AS "CHA_DUPLICATE"
    ,A.A_HA AS "ATE"
    ,A.BIL AS "BIL"
    ,A.CHA AS "CHA_DUPLICATE2"
    ,A.RAT AS "AMT"
    ,A.PRM AS "PREM"
    ,A.T_CHG AS "RAT"
    ,A.PER AS "LAS"
    ,A.S_BIL AS "BIL_A"
    ,A.CD AS "CDE"
    ,A.CBIL_J AS "BIL_J"
    ,A.AMT_D AS "TB"
    ,A.CRY AS "CTRY"
    ,A.RVW AS "RVW"

INTO MYDB.MY_TBL -- <<<<<<< NOTE

FROM MYDB.OTHER_TBL OT
JOIN [LINKEDSERVER\INST,0000].FE.dbo.tblR R
    ON OT.E = R.E
JOIN [LINKEDSERVER\INST,0000].FE.dbo.tblA A
    ON R.IR = A.IR

WHERE OT.U_ID = 'TEST'