2017-04-23 2 views
0

테이블을 가지고 있으며 클래스를 초기화하기 위해 클래스를 작성했습니다. 클래스의 일부입니다. 지정된 캐스트가 유효하지 않습니다.

this.semester = new TSemester((short)v[0]); 
this.course = (int)v[1]; 
this.xGroup = (byte)v[2]; 
this.xType = (byte)v[3]; 
this.subject = (int)v[4]; 
this.form = (byte)v[5]; 
this.stdCount = (int)v[6]; 
this.point = (int)v[7]; 
this.pointMax = (int)v[8]; 
this.badCount = (int)v[9]; 
this.cDate = new TDate((int)v[10]); 
this.remark = (string)v[11]; 
this.options = (int)v[12]; 

제가 라인 .. 쿼리 가지는 클래스를 작성하려고

: this.xGroup = (바이트) V [2]; 나는 오류 지정한 캐스트가 쿼리가 유효하지 않습니다 있습니다

select Semester,0,0,0,Subject,0,sum(StdCount),avg(point) 
,avg(pointMax),sum(badcount),13940101,'',0 from EvlClass inner join members 
on members.srl = Subject where Semester = 13951 and XType=1 and Subject 
in(select Srl from Members where Unit in (1101))group by 
unit,Semester,Subject 

답변

3

조회에 그래서 직접 응용 프로그램 코드에서 바이트로 캐스트 할 수없는 영의 문자 정수를 반환합니다. 바이트 리터럴 0x00, CAST(0 AS tinyint)을 반환하거나 Convert.ToByte((Int32)v[2]);을 사용하여 코드에서 정수 값을 바이트로 변환해야합니다. 다른 바이트 열과 동일합니다.

관련 문제