Bueno el problema es que quiero insertar unos datos en una base de datos, la tabla tiene un campo de fecha con la propiedad GETDATE()
Dim conexion As New SqlConnection("trusted_connection=true;Server=XXXXX;Database=XXXXX;User Id=XXX;Password=XXXXX")
Dim
comando As New SqlCommand("a_Empleados_sp", conexion)
comando.CommandType = CommandType.StoredProcedure
comando.Parameters.Add(
New SqlParameter("@Nombre", Me.TxtNombre.Text))
comando.Parameters.Add(
New SqlParameter("@ApellidoP", Me.TxtApellidoP.Text))
comando.Parameters.Add(
New SqlParameter("@ApellidoM", Me.TxtApellidoM.Text))
comando.Parameters.Add(
New SqlParameter("@LugarN", Me.TxtLugarN.Text))
comando.Parameters.Add(
New SqlParameter("@FechaN", CDate(Me.DtFechaN.Text)))
comando.Parameters.Add(
New SqlParameter("@Direccion", Me.TxtDireccion.Text))
comando.Parameters.Add(
New SqlParameter("@Telefono", Me.TxtTelefono.Text))
comando.Parameters.Add(
New SqlParameter("@Celular", Me.TxtCelular.Text))
--->>>comando.Parameters.Add(
New SqlParameter("@FechaI"))<<<-----
**Como en el diseño de la tabla este dato es GETDATE como se supone que debe de ir, ya intente omitir el dato pero a fuerza quiere que lo especifique y ademas en el store procedure esta especificado pero si lo omito tambien marca error por que no coincide con la definicion de la tabla.
comando.Parameters.Add(
New SqlParameter("@Puesto", Me.TxtPuesto.Text))
comando.Parameters.Add(
New SqlParameter("@Salario", CInt(Me.TxtSalario.Text)))
comando.Parameters.Add(
New SqlParameter("@Contraseña", Me.TxtContraseña.Text))
comando.Parameters.Add(
New SqlParameter("@Activo", Me.ChkActivo.Checked))
comando.Parameters.Add(
New SqlParameter("@TipoC", Me.CmbTipoC.Text))
conexion.Open()
comando.ExecuteNonQuery()
conexion.Close()
MsgBox(
"El registro se ha almacenado", MsgBoxStyle.Information, "Dato Almacenado")
----STORE PROCEDURE----
ALTER PROCEDURE
dbo.a_Empleados_sp
@Nombre
varchar(50),
@ApellidoP
varchar(50),
@ApellidoM
varchar(50),
@LugarN
varchar(50),
@FechaN
datetime,
@Direccion
varchar(200),
@Telefono
varchar(20),
@Celular
varchar(20),
@FechaI
datetime,
@Puesto
varchar(50),
@Salario
money,
@Contrasea
varchar(20),
@Activo
bit,
@TipoC
varchar(30)
AS
INSERT INTO MDEmpleados
VALUES(@Nombre,@ApellidoP,@ApellidoM,@LugarN,@FechaN,@Direccion,@Telefono,@Celular,
@FechaI,@Puesto,@Salario)
INSERT INTO MDUsuarios
VALUES(@Contrasea,@Activo,@TipoC)
RETURN
----QUERY QUE UTILIZE PARA CREAR LA TABLA----
CREATE TABLE MDEmpleados (
IDEmpleado int IDENTITY (1000,1) not null,
Nombre varchar(50) not null,
ApellidoP varchar(50) not null,
ApellidoM varchar(50) not null,
LugarN varchar(50) not null,
FechaN datetime not null,
Direccion varchar(200) not null,
Telefono varchar(20) DEFAULT 'NO ESPECIFICADO',
Celular varchar(20) DEFAULT 'NO ESPECIFICADO',
FechaI datetime DEFAULT GETDATE(),
Puesto varchar(50) not null,
Salario money null
)