Guest Anderson da Silva Rodrigues Postado Agosto 4, 2005 Denunciar Share Postado Agosto 4, 2005 O erro:"ORA-01858: a non-numeric character was found where a numeric was expected"Me é apresentado sempre que tento executar o seguinte código:Dim Dt As New DataTable Try mCn.Open() mCommand.CommandText = "Alter Session Set Nls_Date_Format = 'dd/mm/yyyy hh24:mi:ss'" mCommand.ExecuteNonQuery() Catch e As OleDb.OleDbException 'Tratar erro de conexão End Try mCommand.CommandText = QueryFull mCommand.Parameters.AddWithValue("?", Format(Convert.ToInt16(inID), "00")) 'Por algum motivo o Oracle está dando ingresia com a datas ao utilizar parâmetros 'É preciso descobrir uma forma de concertar isso mCommand.Parameters.AddWithValue("?", Format(inInicio, "dd/MM/yyyy HH:mm:ss")) mCommand.Parameters.AddWithValue("?", Format(inFim.ToString, "dd/MM/yyyy HH:mm:ss")) mCommand.Parameters.AddWithValue("?", inCota.ToString.Replace(",", ".")) Try mDR = mCommand.ExecuteReader(CommandBehavior.CloseConnection) Catch e As OleDb.OleDbException 'Tratar erro de leitura dos dados Stop End Try Dt.Load(mDR) mDR.Close() Return DtSem os parâmetros de Data Inicial e Final tudo corre perfeitamente bem.Já tentei formatar de várias formas e, naturalmente, urilizar o método Add no lugar do AddWithValue e nada.Eu uso o VB.NET 2005 Beta 2 e obanco é um Oracle 9i.Mas onde foi que eu errei? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Agosto 6, 2005 Denunciar Share Postado Agosto 6, 2005 Você não deveria preencher os parâmetros primeiro e só depois executar a query? Pelo seu código, ela está sendo executada primeiro (note o ExecuteNonQuery() lá no topo).Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest Anderson da Silva Rodrigues
O erro:
"ORA-01858: a non-numeric character was found where a numeric was expected"
Me é apresentado sempre que tento executar o seguinte código:
Dim Dt As New DataTable
Try
mCn.Open()
mCommand.CommandText = "Alter Session Set Nls_Date_Format = 'dd/mm/yyyy hh24:mi:ss'"
mCommand.ExecuteNonQuery()
Catch e As OleDb.OleDbException
'Tratar erro de conexão
End Try
mCommand.CommandText = QueryFull
mCommand.Parameters.AddWithValue("?", Format(Convert.ToInt16(inID), "00"))
'Por algum motivo o Oracle está dando ingresia com a datas ao utilizar parâmetros
'É preciso descobrir uma forma de concertar isso
mCommand.Parameters.AddWithValue("?", Format(inInicio, "dd/MM/yyyy HH:mm:ss"))
mCommand.Parameters.AddWithValue("?", Format(inFim.ToString, "dd/MM/yyyy HH:mm:ss"))
mCommand.Parameters.AddWithValue("?", inCota.ToString.Replace(",", "."))
Try
mDR = mCommand.ExecuteReader(CommandBehavior.CloseConnection)
Catch e As OleDb.OleDbException
'Tratar erro de leitura dos dados
Stop
End Try
Dt.Load(mDR)
mDR.Close()
Return Dt
Sem os parâmetros de Data Inicial e Final tudo corre perfeitamente bem.
Já tentei formatar de várias formas e, naturalmente, urilizar o método Add no lugar do AddWithValue e nada.
Eu uso o VB.NET 2005 Beta 2 e obanco é um Oracle 9i.
Mas onde foi que eu errei?
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.