Dos cuestiones acerca de ejecutar sentecias sql sobre SQL Server

09/09/2006 - 16:55 por [Juanjo] | Informe spam
Buenas grupo:

Tengo un par de dudas acerca de ejecutar sentencias en SQL SERVER.

Tengo una aplicacion C# 2005 y una base de datos sql server 2005, y la
forma de ejecutar las sentencias
sql es construyendo la sentecia a "mano" y luego ejecutando (no uso
procedimientos almacenados):
1. PREGUNTA:
Para sentencias de insercion o modificacion, si todo los datos de un cuadro
de texto, p.e., como
puedo proteger estas cadenas, porque si meten una comilla ( ' ), da un error
porque considera esta
comilla como parte de la sentencia y no de la cadena.
2. PREGUNTA:
Cuando hago un select para recoger datos y mostrarlo por ejemplo en un
combo, si el campo quiero
mostrar de la base de datos es una cadena de 50 caracteres, en el combo
muestra cadenas de 50
caracteres, aunque no ocupen esos 50 caracteres. se que esto se puede
solucionar con la funcion
Trim() de la clase String o cuando construyo la sentencia con las funciones
sql ltrim o rtrim. Pero hay alguna
forma de configurar el sql server, o la clase DataTable para que
"automaticamente" haga esto?.


Muchas gracias.

Un saludo

Preguntas similare

Leer las respuestas

#6 [Juanjo]
11/09/2006 - 23:58 | Informe spam
Muchas gracias por la informacion.

"Eduardo A. Morcillo [MS MVP VB]" <emorcillo .AT. mvps.org> escribió en el
mensaje news:
Puede ser algo mas o menos asi:

static int EjecutaComando(string sql, params SqlParameter[] parametros) {

using (SqlConnection conexion = new SqlConnection(connectionString)) {

using (SqlCommand comando = new SqlCommand(sql, conexion)) {

comando.Parameters.AddRange(parametros);

return comando.ExecuteNonQuery();

}
}

}

Y lo usarias asi:

EjecutaComando(
"INSERT INTO Tabla (C1, C2) VALUES(@C1, @C2)",
new SqlParameter("@C1", "Hola"),
new SqlParameter("@C2", DateTime.Today));

EjecutaComando(
"DELETE FROM OtraTabla WHERE Codigo = @CODIGO",
new SqlParameter("@CODIGO", "ABC123"));

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
http://mvp.support.microsoft.com/pr...4EF5A4191C

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida