Para que se hagan una idea de lo que intento seria para este ejemplo:
Una libreria de clases:
Código C#:
Ver original
namespace Utilidades { class ConexionDB { protected string CadenaConex; public SqlConnection conn = new SqlConnection(); public SqlCommand consulta = new SqlCommand(); public ConexionDB(string BasedeDatos) { CadenaConex="Data Source=(local)\\SQLEXPRESS; Initial Catalog="+BasedeDatos+";Integrated Security=SSPI;"; } public void Abrir() { conn.ConnectionString = CadenaConex; try { conn.Open(); Console.Write("Conectado a la base de datos!\n"); } catch (SqlException err) { Console.Write("Error de conexion:\n{0}\n", err); } } public void Cerrar() { try { conn.Close(); Console.Write("Conexion a la base de datos cerrada!\n"); } catch (SqlException err) { Console.Write("No se pudo cerrar la conexion por:\n{0}\n", err); } } public void CrearTabla(string[] tablaycolumnas) { try { consulta.Connection = conn; consulta.CommandText="CREATE TABLE " foreach (var col in tablaycolumnas) { consulta.CommandText += col; } } catch (Exception ex) { Console.Write("No se pudo crear la tabla {0} por culpa de: \n{1}", tablaycolumnas[0], ex); } } }
el Main:
Código c#:
Ver original
using System; using System.Collections.Generic; using System.Linq; using System.Text; using Utilidades; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { ConexionDB ConexionDatos = new ConexionDB("SeccionEconomica"); ConexionDatos.Abrir(); Console.Write("Creo una Tabla"); ConexionDatos.CrearTabla("tabla_dos ","(Nombre char(50) ","(Apellido char(50) "); } } }
La cosa es que no se sabe cuantas columnas querra añadir el cliente en un principio a la tabla. Me podrian dar una mano para saber si voy por buen camino, o deberia plantearme otra vision del problema