我已經看到了一些問題和答案,但它們看起來都與我的問題不同。我正試圖插入一個臨時表,其中有一個從真實表中的where子句到另一個臨時表上的id。讓我解釋一下從另一個Temp Table插入到臨時表中拋出錯誤
這是我第一次插入。它創建一個基於參數的臨時表
Insert Into #programs (programs_id, state_program_ID, org_no, bldg_no)
Select programs_ID, state_program_ID, org_no, bldg_no
From programs as p
Where p.org_no = @org_no
And p.bldg_no = @bldg_no
And p.school_yr = @school_year
這將返回一個包含程序的平面列表的表。課程在學校提供,並從相關state_program
稍作修改。
然後,我需要一個列表,從program_student
表中取得該計劃的所有學生。
Insert Into #programStudent (programs_id , ss_id, status_id)
Select ps.programs_id, ps.ss_id, ps.status_id
From program_student as ps
Where ps.programs_id = #programs.program_id
--'#programs.program_id' throws error
這將符合我的需要,讓所有學生都參加了該學校在該學年提供的任何課程。
完整的錯誤是
多部分識別符「#programs.program_id」不能約束。
它在一個地方說'proram_Id',而不是'programs_id'是否重要?數據庫表屬性的一致名稱是必須的。 –