2008年2月17日 星期日

ORA-01036: 變數名稱 號碼無效


  







此錯誤為,開發環境為ORACLE10g & VisualStudio.NET2005,此問題主為輸入參數錯誤。解決方法:
1.先檢查Command所下的SQL指令中是否每個參數前方都有加入冒號,如:Insert into member(member_id)values(:member_id)

2.接下來檢查是否每個Parameter所載入的位置都正確。不僅僅是順序,不能夠有多一個參數或是少一個參數,否則都會造成錯誤,例如下:

------------------------------------------

# VB.NET Code

Dim cmdQuery As String
cmdQuery = "INSERT INTO

EXAM_QUESTION

(EXAM_QUESTION_NO,EXAM_QUESTION_CONTEXT,SELECTION_1,SELECTION_2,

SELECTION_3,SELECTION_4,EXAM_ANS,EXAM_SCOPE_ID,TEACHER_ID)

VALUES('B0000001',:A,:B,:C,:D,:E,:F,:G,:H)"


Dim cmd As OracleCommand = New OracleCommand
cmd.Connection = con
cmd.CommandText = cmdQuery

Dim p2 As OracleParameter = New OracleParameter("A", OracleDbType.Varchar2, 500)

p2.Direction = Data.ParameterDirection.Input
p2.Value = EQ.ExamQuestionContext
cmd.Parameters.Add(p2)

Dim p3 As OracleParameter = New OracleParameter("B", OracleDbType.Varchar2, 100)

p3.Direction = Data.ParameterDirection.Input
p3.Value = EQ.Selection1
cmd.Parameters.Add(p3)

Dim p4 As OracleParameter = New OracleParameter("C", OracleDbType.Varchar2, 100)

p4.Direction = Data.ParameterDirection.Input
p4.Value = EQ.Selection2
cmd.Parameters.Add(p4)

Dim p5 As OracleParameter = New OracleParameter("D", OracleDbType.Varchar2, 100)

p5.Direction = Data.ParameterDirection.Input
p5.Value = EQ.Selection3
cmd.Parameters.Add(p5)

Dim p6 As OracleParameter = New OracleParameter("E", OracleDbType.Varchar2, 100)

p6.Direction = Data.ParameterDirection.Input
p6.Value = EQ.Selection4
cmd.Parameters.Add(p6)

Dim p7 As OracleParameter = New OracleParameter("F", OracleDbType.Varchar2, 5)

p7.Direction = Data.ParameterDirection.Input
p7.Value = EQ.ExamAns.ToString
cmd.Parameters.Add(p7)

Dim p8 As OracleParameter = New OracleParameter("G", OracleDbType.Varchar2, 10)

p8.Direction = Data.ParameterDirection.Input
p8.Value = ES.ExamScopeID
cmd.Parameters.Add(p8)

Dim p9 As OracleParameter = New OracleParameter("H", OracleDbType.Varchar2, 10)

p9.Direction = Data.ParameterDirection.Input
p9.Value = T.TeacherID
cmd.Parameters.Add(p9)
------------------------------------------

0 意見:

 

丑角的天空 Copyright © 2007-2009 Green Scrapbook Diary Designed by SimplyWP | Made free by Scrapbooking Software | Bloggerized by Ipiet Notez