Problem Inserting Date Column with ASP.NET
258482Sep 16 2003 — edited Sep 16 2003I get "ORA-01840: input value not long enough for date format" when running the following code from ASP.NET. It runs fine from SQL Plus.
Dim deptSenDt As Date
Dim plantSenDt As Date
Dim deptStartDt As Date
deptSenDt = txtSched_Dept_Seniority_Dt.Text
plantSenDt = txtHire_Dt.Text
deptStartDt = txtSched_Dept_Start_Dt.Text
Dim MyCommand As New OleDb.OleDbCommand()
MyCommand.Connection = conn
MyCommand.CommandText = "dbo.proc_insert_sched_empl"
MyCommand.CommandType = CommandType.StoredProcedure
MyCommand.Parameters.Add(New OleDb.OleDbParameter("i_ssn", Data.OleDb.OleDbType.VarChar)).Value = txtSSN.Text
MyCommand.Parameters.Add(New OleDb.OleDbParameter("i_emp_nbr", Data.OleDb.OleDbType.VarChar)).Value = txtEmp_Nbr.Text
MyCommand.Parameters.Add(New OleDb.OleDbParameter("i_frst_nm", Data.OleDb.OleDbType.VarChar)).Value = txtFrst_Nm.Text
MyCommand.Parameters.Add(New OleDb.OleDbParameter("i_lst_nm", Data.OleDb.OleDbType.VarChar)).Value = txtLst_Nm.Text
MyCommand.Parameters.Add(New OleDb.OleDbParameter("i_skill", Data.OleDb.OleDbType.VarChar)).Value = txtSkill.Text
MyCommand.Parameters.Add(New OleDb.OleDbParameter("i_sched_dept_cd", Data.OleDb.OleDbType.VarChar)).Value = ddlDept.SelectedItem.Value
MyCommand.Parameters.Add(New OleDb.OleDbParameter("i_sched_dept_seniority_dt", Data.OleDb.OleDbType.VarChar)).Value = deptSenDt.ToShortDateString
MyCommand.Parameters.Add(New OleDb.OleDbParameter("i_sched_crew_cd", Data.OleDb.OleDbType.VarChar)).Value = ddlCrew.SelectedItem.Value
MyCommand.Parameters.Add(New OleDb.OleDbParameter("i_sched_dept_start_dt", Data.OleDb.OleDbType.VarChar)).Value = deptStartDt.ToShortDateString
MyCommand.Parameters.Add(New OleDb.OleDbParameter("i_hire_dt", Data.OleDb.OleDbType.VarChar)).Value = plantSenDt.ToShortDateString
MyCommand.Parameters.Add(New OleDb.OleDbParameter("o_msg", Data.OleDb.OleDbType.VarChar)).Direction = ParameterDirection.Output
MyCommand.Parameters.Item("o_msg").Size = 128
Dim p As OleDb.OleDbParameter
For Each p In MyCommand.Parameters
Trace.Write(p.ParameterName, p.Value)
Next
'Added yesterday
MyCommand.Connection.Open()
Try
MyCommand.ExecuteNonQuery()
' Message.InnerHtml = "Record Inserted Successfully.<br/>"
Message.InnerHtml = MyCommand.Parameters.Item("o_msg").Value
Catch ex As System.Exception
Message.InnerHtml = "Record Insert Failed.<br/>" & ex.ToString
End Try
MyCommand.Connection.Close()