0
OracleCommand 객체에 매개 변수를 추가하려고했지만 예외가 발생했습니다 (객체는 할 수 없습니다 ...). 무슨 일을하려고하면 데이터 테이블의 열이 null 인 경우 null 값 (해당 열은 비어 있어야 함)을 데이터베이스에 삽입합니다. 는 데이터를 이런 식으로 뭔가를 포맷 걸리는 곳에서 데이터 테이블 :oracle 매개 변수를 채우는 중 오류가 발생했습니다 (객체를 DBNull에서 다른 유형으로 캐스팅 할 수 없음)
dt.Columns.Add("NAME", GetType(String))
dt.Columns.Add("AGE", GetType(Integer))
채우기
dt.Rows(0)("NAME") = DBNull.Value
dt.Rows(0)("AGE") = DBNull.Value
나중에 절차를 통해 데이터를 삽입 할 때 :
....
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add("NAME", OracleType.VarChar).Value = IIf(IsDBNull(dt.Rows(0)("CVV")), OracleClient.OracleString.Null, dt.Rows(0)("CVV")) <-- Seems to work.
cmd.Parameters.Add("AGE"), OracleType.Number).Value = IIf(dt.Rows(0).IsNull("AGE"), OracleClient.OracleNumber.Null, CInt(dt.Rows(0)("AGE"))) <-- Error.
어떤 제안?
감사의 경우되지 않습니다하여 IIf 양쪽을 평가했다. 이제 코드를 수정하겠습니다. – Popplar
안녕하세요, If 문장을 사용할 수없는 것 같습니다, 그것은 vb.net 코드로 표시되고 proyect를 빌드하면 실패합니다. – Popplar
죄송합니다, 지금까지 (밤 시간은 여기에)이 답변을 따르지 않았습니다. 괜찮습니까? – Steve