SQL Server - Crear las variables de la base de datos automaticamente?

 
Vista:
sin imagen de perfil

Crear las variables de la base de datos automaticamente?

Publicado por dr4 (3 intervenciones) el 22/05/2015 13:18:22
Buenas chavales, he hecho un programa en VS usando C# con una base de datos en sql server, a través del cual se puede actualizar el contenido de la base de datos añadiendo o modificando lo que ya tiene,el problema es que me gustaría que mi programa funcionará en cualquier base de datos.Tal y como lo tengo ahora he predefinido las variables tanto en el servidor como en el programa así que solo podré manipular una base de datos que tenga esas variables.

¿Hay alguna manera de leer la base de datos y crear sus respectivas variables en el programa automaticamente? ni siquiera sé si es posible
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Crear las variables de la base de datos automaticamente?

Publicado por Isaias (4558 intervenciones) el 22/05/2015 17:59:51
LOGICAMENTE, y una respuesta rápida: SI

Ya que esto es cuestión de "Logica" de programación.

Aquí viene el problema, al momento de instalar tu "programa" (Front-End), seguramente tendras que preguntar, ¿Qué base se va a utilizar?

ORACLE
DB2
SYBASE
INFORMIX
MYSQL
ACCESS
SQL SERVER
etc.

De ahí, defines la conexión, te conectas y ejecutas una archivo T-SQL, donde tengas la definición de tus variables.

Mis dudas son: Esto no tiene nada que ver con SQL Server, cierto?, Por que no colocas tus variables en un archivo .INI (definición de entorno)?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Crear las variables de la base de datos automaticamente?

Publicado por dr4 (3 intervenciones) el 22/05/2015 20:31:18
me has malinterpretado (aunque esa respuesta me viene bien para otra duda que tenía, así que ¡gracias!) me refiero a que con mi programa solo puedo manipular una base de datos de SQL que tenga las mismas variables, yo lo que necesito es que el programa detecte que variables tiene la base de datos para poder manipularla, ahora mismo en mi programa tengo definido "idcategoria,nombre,descripcion" así que si en una base de datos hay "idproducto,marca,modelo,año" no funcionará


te pongo el ejemplo del método insertar de mi programa, quisiera poder insertar datos en cualquier base de datos desde mi programa,pero ahora mismo me es imposible claro

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
public string Insertar(DCategoria Categoria)
{
 
	string rpta = "";
	SqlConnection SqlCon = new SqlConnection();
 
	try
	{
		//código
		SqlCon.ConnectionString = Conexion.Cn;
		SqlCon.Open();
 
		//establecer comando
		//accedo al prosedure categoria
		SqlCommand SqlCmd = new SqlCommand();
		SqlCmd.Connection = SqlCon;
		SqlCmd.CommandText = "spinsertar_categoria";
		SqlCmd.CommandType = CommandType.StoredProcedure;
 
 
		//primer parametro
		SqlParameter ParIdcategoria = new SqlParameter();
		//le pongo el nombre del parametro
		ParIdcategoria.ParameterName = "@idcategoria";
		//le digo que categoria es int:
		ParIdcategoria.SqlDbType = SqlDbType.Int;
		//le digo que id categoria es un parametro de salida
		ParIdcategoria.Direction = ParameterDirection.Output;
		//lo agrego
		SqlCmd.Parameters.Add(ParIdcategoria);
 
 
 
		//segundo parametro nombre
		SqlParameter ParNombre = new SqlParameter();
		ParNombre.ParameterName = "@nombre";
		ParNombre.SqlDbType = SqlDbType.VarChar;
		ParNombre.Size = 50;
		ParNombre.Value = Categoria.Nombre;
		SqlCmd.Parameters.Add(ParNombre);
 
 
 
		//tercer parametro descripcion
		SqlParameter ParDescripcion = new SqlParameter();
		ParDescripcion.ParameterName = "@descripcion";
		ParDescripcion.SqlDbType = SqlDbType.VarChar;
		ParDescripcion.Size = 256;
		ParDescripcion.Value = Categoria.Descripcion;
		SqlCmd.Parameters.Add(ParDescripcion);
 
		//ejecutamos comando
 
		rpta = SqlCmd.ExecuteNonQuery() == 1 ? "OK" : "No se ingreso el registro";
 
 
 
	}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar