?
Solved

Help with Select Into statement

Posted on 2009-05-11
5
Medium Priority
?
1,072 Views
Last Modified: 2012-08-14
Receiving the following error and not sure why:

Msg 1038, Level 15, State 5, Line 48
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. Add a name or single space as the alias name.

DECLARE
	@inst_id varchar(9),
	@campus_id varchar(4),
	@coll_term varchar(20),
	@coll_type varchar(20),
	@acad_year varchar(4),
	@scholastic_year varchar(4),
	@pfaids_db varchar(20),
	@pasecID varchar(10),
	@first_term varchar(3),
	@honors varchar(3),
	@study_abroad varchar(3),
	@foreign_ex varchar(3),
	@alt_credit_ind varchar(3),
	@esl_ind varchar(3),
	@tech_coll_pgm varchar(3),
	@eop_ind varchar(3),
	@eop_optout_ind varchar(3),
	@perkins_ind varchar(3),
	@post_grad_plan_cde varchar(1),
	@sql varchar(8000),
	@nc varchar(1)
 
select @pasecID = '0123456789'
select @inst_id = '413005206'
select	@campus_id = '9999'
select	@coll_term = 'SPRING'
select @coll_type = 'PILOT'
select @scholastic_year = '0809'
select	@acad_year = '2009'
select @first_term = 'NA'
select @honors = 'NA'
select @study_abroad = 'NA'
select	@foreign_ex  = 'NA'
select @alt_credit_ind = 'NA'
select	@esl_ind = 'NA'
select @tech_coll_pgm = 'NA'
select	@eop_ind = 'NA' 
select	@eop_optout_ind = 'NA'
select	@perkins_ind  = 'NA'
select	@post_grad_plan_cde  = '6'
select @nc = ''
 
 
 
SELECT 
@inst_id, @campus_id, @coll_term, @coll_type, @acad_year, @nc,
@nc,@nc,@nc,@nc,@nc,@nc,@nc,@nc,
 
case when dh.cur_degree = 'N' then '2' 
	when dh.cur_degree = 'Y' then '1' else '3' end  , 
case when dh.degr_cde in('AA','AAS','AS','AST') then '3'
	when dh.degr_cde in ('BS','BA') then '6'
	when dh.degr_cde = 'ND' then '13'
	when dh.degr_cde = 'UCT' then '1'
	when dh.degr_cde is null then '12'
	end,
case when dh.acad_degr_cde in('AA','AAS','AS','AST') then '3'
	when dh.acad_degr_cde in ('BS','BA') then '6'
	when dh.acad_degr_cde = 'ND' then '13'
	when dh.acad_degr_cde = 'UCT' then '1'
	when dh.acad_degr_cde is null then '12'
	end,
case when sd.class_cde = 'CH' then '4' else '4' end,
case when sm.trm_pt_ft_sts = 'F' then 'YES' else 'NO' end,
@first_term, @honors,
case when sm.resid_commuter_sts = 'R' then 'YES' else 'NO' end,
@study_abroad, @foreign_ex, @alt_credit_ind, @esl_ind,
case when sa.data_valid = 'Y' then 'YES' else 'NO' end,
@nc, @tech_coll_pgm, @eop_ind, @eop_optout_ind, @perkins_ind, @post_grad_plan_cde,
case when sd.exit_reason in ('01','02','03') then '7'
	when sd.exit_reason = '04' then '8'
	when sd.exit_reason = '05' then '2'
	when sd.exit_reason = '06' then '9'
	when sd.exit_reason = '07' then '10'
	when sd.exit_reason = '09' then '1'
	when sd.exit_reason = '10' then '11'
	when sd.exit_reason = '13' then '3'
	when sd.exit_reason = '17' then '5'
	when sd.exit_reason = '19' then '4'
	when sd.exit_reason is null then ''
	else '12' end,
@nc,@nc,@nc,@nc,
RTRIM(sd.career_hrs_earned),
@nc,@nc,@nc,
RTRIM(sd.career_gpa),
@nc,@nc,@nc,@nc
into data
from TmsEprd.dbo.stud_term_sum_div st
left outer join npfaids.dbo.student np
       on st.id_num = np.alternate_id
left outer join NPFAIDS.dbo.say_fm_stu sa
       on np.student_token = sa.stu_award_year_token 
left outer join TmsEPrd.dbo.STUDENT_MASTER sm 
	   on sm.id_num = st.id_num
left outer join TmsEPrd.dbo.degree_history dh
	   on dh.id_num = st.id_num
left outer join TmsEPrd.dbo.student_div_mast sd
	   on sd.id_num = st.id_num
where
      (st.div_cde = 'UG') and
      (st.yr_cde = '0809') and
      (st.trm_cde = 'SP')and
      (st.num_of_crs > 0)
 
 
select @sql = 'bcp "select * from data" queryout C:\ -c -t, -T -S' + @@servername
exec master..xp_cmdshell @sql

Open in new window

0
Comment
Question by:jasonbrandt3
  • 3
  • 2
5 Comments
 
LVL 75

Accepted Solution

by:
Aneesh Retnakaran earned 2000 total points
ID: 24355553
Hello jasonbrandt3,

You miss to put the column names for all the case Statements


case when dh.cur_degree = 'N' then '2'
      when dh.cur_degree = 'Y' then '1' else '3' end  As SomeColumnName ,

Regards,

Aneesh
0
 

Author Comment

by:jasonbrandt3
ID: 24355564
Do I need to do it for the variables in the select also?
0
 
LVL 75

Expert Comment

by:Aneesh Retnakaran
ID: 24355619
Yes of course :)
0
 

Author Comment

by:jasonbrandt3
ID: 24355625
TY:)
0
 
LVL 75

Expert Comment

by:Aneesh Retnakaran
ID: 24355724
You just need to run just that select statement in SSMS , check the resultset, put the column names for those columns which are missing the column names
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

If you having speed problem in loading SQL Server Management Studio, try to uncheck these options in your internet browser (IE -> Internet Options / Advanced / Security):    . Check for publisher's certificate revocation    . Check for server ce…
In this article we will get to know that how can we recover deleted data if it happens accidently. We really can recover deleted rows if we know the time when data is deleted by using the transaction log.
Are you ready to place your question in front of subject-matter experts for more timely responses? With the release of Priority Question, Premium Members, Team Accounts and Qualified Experts can now identify the emergent level of their issue, signal…
As many of you are aware about Scanpst.exe utility which is owned by Microsoft itself to repair inaccessible or damaged PST files, but the question is do you really think Scanpst.exe is capable to repair all sorts of PST related corruption issues?

807 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question