|
|
|
|
|
#1 -
11/03/2008 16:42:11
|
Reporta abuso
|
Link Permanente
|
|
Como ejecutar y pasarle parametros procedimiento almacenado
|
|
|
|
|
|
Antes que nada quiero poner un ejemplo de un boton que si funciona para que veais la configuracion:
//este codigo recupera el nombre del usuario y lo mete en un texbox (sin utilizar procedimientos almacenados) string s="Data Source=desktop\\SQLEXPRESS;Initial Catalog=Prueba;Integrated Security=True;";
SqlConnection c=new SqlConnection(s); c.Open(); SqlCommand com = new SqlCommand("Select * from Table1", c); SqlDataReader dr = com.ExecuteReader(); dr.Read(); textBox1.Text = dr["usuario"].ToString();
ahora quiero insertar un fila en mi bd que esta en desktop\SQLEXPRESS\Prueba.dbo PERO con procedimientos almacenados. La tabla donde quiero insertar es Table1 y tiene las columnas: usuario, contraseña y dni todas nvarchar(10). Los datos a insertar los tengo que recoger de los textbox ( tbusuario, ,tbdni y tbcontraseña)
y el codigo del procedimiento almacenado es : ALTER PROCEDURE dbo.Insertar ( @usuario nvarchar(10), @contraseña nvarchar(10), @dni nvarchar(10) ) AS
SET NOCOUNT ON
INSERT INTO Table1 (usuario, contraseña, dni) VALUES (@usuario,@contraseña,@dni)
como seria el codigo?? algo asi? :
string source = "Data Source=desktop\\SQLEXPRESS;Initial Catalog=Prueba;Integrated Security=True;"; SqlConnection conn = newSqlConnection(source); conn.Open(); SqlCommandcmd = new SqlCommand("Insertar", conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add(newSqlParameter("@usuario", SqlDbType.NVarChar)); cmd.Parameters.Add(newSqlParameter("@contraseña", SqlDbType.NVarChar)); cmd.Parameters.Add(newSqlParameter("@dni", SqlDbType.NVarChar)); cmd.UpdatedRowSource = UpdateRowSource.None; cmd.Parameters[0].Value = "cris"; cmd.Parameters[1].Value = "1234"; cmd.Parameters[0].Value = "12345678z"; cmd.ExecuteNonQuery();
|
|
|
|
|
|
#2 -
18/03/2008 16:42:13
|
Reporta abuso
|
Link Permanente
|
|
RE: Como ejecutar y pasarle parametros procedimiento almacenado
|
|
|
hi, bueno casi todo esta bien:
- el procedimiento insertar, ok - la conexion, ok el problema seria en lo siguiente:
string source = "Data Source=desktop\\SQLEXPRESS;Initial Catalog=Prueba;Integrated Security=True;";ok SqlConnection conn = newSqlConnection(source); conn.Open(); SqlCommand cmd = new SqlCommand("Insertar", conn); cmd.CommandType = CommandType.StoredProcedure;ok
directamente... cmd.Parameters.Add("@usuario", SqlDbType.NVarChar, 15) cmd.Parameters("@usuario").Value = 'tbusuario.Text .... para cada parametro cmd.ExecuteNonQuery();ok
ojala t ayude bye
|
|
|
|
|