혹시 asp mssql 관련 잘아시는 분 계신가요

Microsoft OLE DB Provider for SQL Server error '80040e14'
Syntax error or access violation
/res.asp, line 105

자꾸 이런 에러가 발생하면서 고쳐봐도 같은 오류가 발생해서

질문 드립니다.

Copy
<%@Language="VBScript" CODEPAGE="65001" %>

<% 

Response.CharSet="utf-8"

Session.codepage="65001"

Response.codepage="65001"

Response.ContentType="text/html;charset=utf-8"

 

 

Const adCmdStoredProc = 4

Const adVarChar = 200

Const adParamInput = 1

Const adInteger = 3

Const adParamOutput = 2

 

set conn = server.CreateObject("ADODB.connection")

conn.Open "Provider=SQLOLEDB.1;Password=****;Persist Security Info=False;User ID=****;Initial Catalog=MEDIPLUS;Data Source=xxx.xxx.xxx.xxx"

 

 

Dim DEPT_CD

DEPT_CD = request.QueryString("DeptID")

Dim DEPT_NM

DEPT_NM = request.QueryString("DeptName")

Dim DOCT_CD

DOCT_CD = request.QueryString("DoctorCode")

Dim DOCT_NM

DOCT_NM = request.QueryString("DoctorName")

 

Dim ReserveDate

ReserveDate = request.QueryString("ReserveDate")

Dim ReserveTime

ReserveTime = request.QueryString("ReserveTime")

Dim ReserveName

ReserveName = request.QueryString("ReserveName")

 

Dim Jumin1

Jumin1 = request.QueryString("Jumin1")

Dim Jumin2

Jumin2 = request.QueryString("Jumin2")

 

Dim Tel1

Tel1 = request.QueryString("Tel1")

Dim Tel2

Tel2 = request.QueryString("Tel2")

Dim Tel3

Tel3 = request.QueryString("Tel3")

 

Dim Tel

Tel = Tel1&Tel2&Tel3

 

Dim Jumin

Jumin = Jumin1&Jumin2

 

Dim come_type

come_type = request.QueryString("come_type")

Dim memo

memo = request.QueryString("VisitPurpose")

Dim GB

GB = request.QueryString("rsrv_user_gb")

 

Set cmd = Server.CreateObject("ADODB.Command")

cmd.ActiveConnection = conn

cmd.CommandType = adCmdStoredProc

'cmd.CommandText = "EXEC UP_H1CTI_OPDIN_C$002 @CLINIC_YMD=?, @CLINIC_TIME=?, @DEPT_CD=?, @DOCT_EMPL_NO=?, @MEMO=?, @COME_TYPE_GB=?, @PTNT_NM=?, @PTNT_PRSN_NO=?, @PHONE_NO=?, @RSRV_USER_GB=?"

cmd.CommandText = "EXEC UP_H1CTI_OPDIN_C$002 ?, ?, ?, ?, ?, ?, ?, ?, ?, ?"

 

cmd.Parameters.Append cmd.CreateParameter("@CLINIC_YMD", adVarChar, adParamInput, 8)

cmd.Parameters.Append cmd.CreateParameter("@CLINIC_TIME", adVarChar, adParamInput, 4)

cmd.Parameters.Append cmd.CreateParameter("@DEPT_CD", adVarChar, adParamInput, 4)

cmd.Parameters.Append cmd.CreateParameter("@DOCT_EMPL_NO", adInteger, adParamInput, 4)

cmd.Parameters.Append cmd.CreateParameter("@MEMO", adVarChar, adParamInput, 255)

cmd.Parameters.Append cmd.CreateParameter("@COME_TYPE_GB", adVarChar, adParamInput, 2)

cmd.Parameters.Append cmd.CreateParameter("@PTNT_NM", adVarChar, adParamInput, 50)

cmd.Parameters.Append cmd.CreateParameter("@PTNT_PRSN_NO", adVarChar, adParamInput, 13)

cmd.Parameters.Append cmd.CreateParameter("@PHONE_NO", adVarChar, adParamInput, 20)

'cmd.Parameters.Append cmd.CreateParameter("@RSRV_USER_GB", adVarChar, adParamInput, 1)

 

cmd.Parameters("@CLINIC_YMD").Value = ReserveDate

cmd.Parameters("@CLINIC_TIME").Value = ReserveTime

cmd.Parameters("@DEPT_CD").Value = DEPT_CD

cmd.Parameters("@DOCT_EMPL_NO").Value = DOCT_CD

cmd.Parameters("@MEMO").Value = memo

cmd.Parameters("@COME_TYPE_GB").Value = come_type

cmd.Parameters("@PTNT_NM").Value = ReserveName

cmd.Parameters("@PTNT_PRSN_NO").Value = Jumin

cmd.Parameters("@PHONE_NO").Value = Tel

'cmd.Parameters("@RSRV_USER_GB").Value = GB

 

If conn.State = 1 Then

    Response.Write "데이터베이스에 연결되었습니다"

Else

    Response.Write "데이터베이스 연결에 실패하였습니다."

End If

cmd.Prepared = true

 

' 실행 결과를 받기 위한 Recordset 객체를 생성합니다.

Set Rs = CreateObject("ADODB.Recordset")

 

' 저장 프로시저를 실행하고 결과를 받습니다.

rs.Open cmd                   <-에러가 발생하는 105줄

 

' 결과를 처리합니다.

If Not(rs.eof Or rs.bof) Then

   id = rs("MSG")

Else

   response.write "조회 안됨"

'End If

 

' 객체를 해제합니다.

rs.Close

Set rs = Nothing

Set cmd = Nothing

conn.Close

Set conn = Nothing

%>
|

답변 2개 / 댓글 1개

2023-06-19 (월) 08:17:15
rs.Open cmd, conn

으로 해 보세요.

소스를 그대로 에디터에 넣었을때 line 105 근처이고 Syntax error 라면

If ~ Else ~ End If 절이 올바르지 않아 생기는문제가 아닐까 싶습니다.

' 결과를 처리합니다.
If Not(rs.eof Or rs.bof) Then
   id = rs("MSG")
Else
   response.write "조회 안됨"
'End If

End If

답변에 대한 댓글 1개

답변 감사합니다.
수정하고 다시 해보아도 같은 오류가 발생 하네요 ㅠㅠ

답변을 작성하려면 로그인이 필요합니다.