Los datos de cadena o binarios se truncarían. Se terminó la instrucción.
-
Tuesday, September 13, 2011 11:02 PM
Hola a todos,resulta que tengo un procedimiento almacenado el cual me tira ese error, creo que es por problema de la fecha, pero hasta donde veo lo tengo bien hecho, a ver si me pueden ayudar con esto:
Procedimiento Almacenado:
CREATE PROCEDURE SaveMembers @rut nvarchar(12), @nombre nvarchar(50), @apellido_paterno nvarchar(50), @apellido_materno nvarchar(50), @fono nvarchar(50), @movil nvarchar(8), @direccion nvarchar(50), @fecha_ingreso date AS BEGIN TRANSACTION INSERT INTO Member(rut_miembro, nombres_miembro, apellidop_miembro, apellidom_miembro, direccion_miembro, telefono_miembro, movil_miembro, fecha_miembro) VALUES (@rut, @nombre, @apellido_paterno, @apellido_materno, @fono, @movil, @direccion, @fecha_ingreso) IF @@error <> 0 BEGIN ROLLBACK TRAN RETURN END COMMIT TRANSACTION;
Codigo C# que usa el SP:public static void InsertaMiembro(string rut, string nombres, string paterno, string materno, string fono, string movil, string direccion, DateTime fecha) { using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["con_bd"].ToString())) { connection.Open(); SqlCommand cmd = new SqlCommand("SaveMembers", connection); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@rut", rut); cmd.Parameters.AddWithValue("@nombre", nombres); cmd.Parameters.AddWithValue("@apellido_paterno", paterno); cmd.Parameters.AddWithValue("@apellido_materno", materno); cmd.Parameters.AddWithValue("@fono", fono); cmd.Parameters.AddWithValue("@movil", movil); cmd.Parameters.AddWithValue("@direccion", direccion); cmd.Parameters.AddWithValue("@fecha_ingreso", fecha); cmd.ExecuteNonQuery(); }
El tipo de dato del campo fecha_miembro de la tabla lo tengo como "date".Bueno eso, gracias por la ayuda desde ya! Saludos.
All Replies
-
Tuesday, September 13, 2011 11:36 PM
Hola,yo te diuria que chequees si los campos de las tablas donde quieres insertar son todos varchar pórque derrepente hay un int por ahi,ademas tambien pudiera ser que te estas excediendo al insertar campos mas grandes de lo que has declarado por ejemplo
@movil nvarchar(8), si le metes 9 caracteres ya vuelas.
podrias depurar tu procedimiento para ver donde se esta cayendo
http://www.blogams.com/2010/05/depurar-procedimiento-almacenado-en.html
Si la respuesta te fue útil vótala como tal,y si fue respuesta márcala. Saludos. Lima-Perú
- Edited by Augusto1982 Tuesday, September 13, 2011 11:38 PM
- Edited by Augusto1982 Tuesday, September 13, 2011 11:41 PM
- Marked As Answer by Eduardo PorteschellerMicrosoft Community Contributor, Moderator Thursday, September 15, 2011 6:09 PM
-
Tuesday, September 13, 2011 11:59 PM
Hola,
Basicamente es lo ultimo que ya te comentarón. Estas tratando de meter en un campo mas datos de los que soporta. Revisa la base de datos y verifica el tamaó que tienes establecido. Posiblemente sea el campo direccion
Saludos,
Jason Ulloa
Mi Blog San José, Costa Rica- Marked As Answer by Eduardo PorteschellerMicrosoft Community Contributor, Moderator Thursday, September 15, 2011 6:09 PM

