Imagino que odukec se rafiere a ruta de conexion mas que a sentencia.
Vaya tema has ido a tocar, por lo menos para mí. Aún no he encontrado "la mejor forma".
Hay muchas formas, desde el que lo automatiza TODO, con datagird, etc, con databinding, etc; y en sólo código, de grande a pequeño: puedes usar un DataSet (Copia de la base de datos) o sólo DataApdapter con un CommandBuilder (Es el constructor automático de comandos:nuevo,borrar y actualizar), y muchas mas maneras que he visto. A estas formas los cambios los haces con la funcion Update.
Personalmente uso del siguiente modo:
-Conexion, o no!. (Al usar un dataadapter y commandBuilder, puedes especificar sólo la ruta, sin necedad de crear la conexion, y tener que abrirla y CERRARLA!)
-DataAdapter,
-Command (igual que odukec)
-y el uso de tablas (DataTable). Me parece mas simplificado que un dataset, aunque es mas o menos lo mismo.
Una cosa a añadir a las secuencias de comandos:
Cuando los datos a actualizar son "variables", debes hacer p.e.: INSERT INTO Clientes (Nombre, Apellido) VALUES (@Nombre, @Apellido)
y despues los añades con: Comando.Parameters.AddwithValue("@Nombre", Variable)
Mira la web de "el guille". Tiene mucha información.
Si necesitas algún ejemplo, dímelo que lo subo.
MUY IMPORTANTE: Si eres autodidacta como yo, puedes volverte loco y no te funcionará. Aunque ya se que es bastante elemental, al principio
no me funcionaba nada porque creaba las tablas del SQL sin indicarle una referencia principal. Todavía ahora no lo he visto en ningun libro ni web.
Saludos,
Picavid