無法繫結由多個部分組成的識別符號

2021-06-22 16:32:55 字數 1068 閱讀 4694

今天遇到個奇怪的問題,下面是出現問題的sql語句(請無視語句效能):

select a.meter_id,a.collect_dt,a.collect_num as collect_num,c.collect_numz,c.collect_numf,c.collect_num,c.collect_xs,d.[user_id]

from b_collect_info_report as a

left join ( select meter_id,collect_numz,collect_numf,collect_num,collect_xs from b_collect_now ) as c on a.meter_id = c.meter_id

left join ( select meter_id,[user_id] from b_user_info ) as d on a.meter_id = d.meter_id

where a.meter_id in (select meter_id from b_collector_info where meter_id in ( '203598','203599','203600' ) )

and collect_dt>='2014-07-06 00:00:00' and collect_dt<='2014-07-06 23:59:59'

這個語句在sqlserver2005management裡面執行是沒有問題的,但是在伺服器上執行,tomcat會報無法繫結由多個部分組成的識別符號a.meter_id,這我就覺得奇怪了,要是兩個地方都報錯還好理解,偏偏只有伺服器報錯。

網上找了一些關於「無法繫結由多個部分組成的識別符號」的問題和解決,卻都是在資料庫裡報的錯。

關鍵是他們的出的錯誤我自己這裡沒找到。

根據看到的網頁,出現「無法繫結由多個部分組成的識別符號」的錯誤,大部分是因為漏寫表名或者在子查詢外使用子查詢內定義的別名。

沒找到辦法,個人感覺和別名有很大關係,於是把別名都改回了原表名,問題到還真解決了,看來別名不能瞎用,得好好研究研究。

下面是查資料過程中看到的**: , 

哪位要是看明白我這是什麼問題,還希望能留個言啊。

無法繫結由多個部分組成的識別符號的解決方法

需要將本地的幾張表增量備份到另乙個伺服器中其中有一句sql是這樣的 insert into dataserver.hrms.dbo.employeetranslate select from employeetranslate where dataserver.hrms.dbo.employeetr...

TNS 無法解析指定的連線識別符號

plsql連不上oracle,報tns 無法解析指定的連線識別符號 解決方法 選擇 開始 程式 oracle configuration and migration tools net manager 在 服務命名 樹結點下新建 服務命名 第一頁 net服務名隨便取 第二頁 使用預設的tcp ip ...

oracle無法解析指定的連線識別符號

oracle資料庫安裝在其他電腦上,自己的電腦上安裝oracle客戶端,這時下面的 可以連上資料庫,把資料匯出來。echo 匯出資料庫資料 set user username exp user password abc file e 資料庫備份 user date db 但是如果再在本機上安裝伺服器...