2016-07-21 2 views
-2

현재 vb6.0 프로젝트에서 작업 중이며 SQLExpress를 백엔드 데이터베이스 서버로 사용 중입니다. 다음 쿼리를 작성하여 부서 당 직원 수를 얻었습니다. 쿼리는 SQLServer의 쿼리 창에서 성공적으로 실행되고 원하는 결과를 반환합니다. 내 vb 6.0 양식에서 동일한 쿼리를 사용하여 로컬 변수에 결과를 얻으려고 Temp.변수에 SQL 쿼리 결과 할당

그러나 쿼리 결과를 변수 Temp에 할당 할 수 없습니다. 나는 강타 당하고 앞으로 나아갈 수 없습니다.

SQL = "select dbo.tbl_employee_master.dept_id, COUNT(emp_id) as '# of employees' from dbo.tbl_employee_master where dbo.tbl_employee_master.dept_id IN (select dbo.tbl_employee_master.dept_id from dbo.tbl_employee_master Group BY dbo.tbl_employee_master.dept_id HAVING dbo.tbl_employee_master.dept_id = '" & cmb_dept.Text & "') Group BY dbo.tbl_employee_master.dept_id" 

connectDB 
Dim Temp As String 
Temp = RS.GetString 
lbl_last_id.Caption = Temp 
connClose 
txt_emp_code.Text = lbl_comp_short.Caption & "-" & lbl_dept_short_form.Caption & "-" & lbl_last_id.Caption 

사용자가 드롭 다운 목록 및 양식에서 다음 필드로 이동에서 부서를 선택하면, 위의 쿼리가 실행하고 그것을 위해 직원 수를 읽어 들인다 가도록 (듯이), 나는, 콤보 상자 LostFocus 이벤트 코드 위에 쓰고 있어요 특정 부서.

+0

귀하의 의견을 보내 주셔서 감사합니다. SQL로 당신을 도울 수 없습니다. [edit] SQL을 실행하고있는 vb6 코드를 추가하고 결과를'Temp'에 적용하려고하는 질문. –

+0

코드를 표시하면 누군가가 무엇이 잘못되었는지를 알 수 있습니다. 일반적인 대답은 'intVariable = recordset.Fields (0) .Value'입니다. – jac

+0

코드를 업데이트하시기 바랍니다. –

답변

0

RecordSet 속성에 대한 약간의 문제를 해결하기 위해 다음과 같이 부서별 직원 수를 가져올 수 있습니다. 당신이 나는 경우

SQL = "select COUNT(emp_id) as '# of employees' from dbo.tbl_employee_master where dbo.tbl_employee_master.dept_id IN (select dbo.tbl_employee_master.dept_id from dbo.tbl_employee_master Group BY dbo.tbl_employee_master.dept_id HAVING dbo.tbl_employee_master.dept_id = '" & cmb_dept.Text & "') Group BY dbo.tbl_employee_master.dept_id" 
connectDB 
Dim Temp As String 
Temp = RS.GetString 
lbl_last_id.Caption = Temp 

connClose 
txt_emp_code.Text = lbl_comp_short.Caption & "-" & lbl_dept_short_form.Caption & "-" & lbl_last_id.Caption 

, 나는 동일

Temp = RS.GetString 

Recordset.GetString

의 도움으로 변수에 할당, 그것뿐만 아니라 레코드의 수를 반환 그래서 내 SQL 쿼리에 약간의 변경을 @ c-pound 전문가 및 jac