• Lunes 29 de Abril de 2024, 15:28

Autor Tema:  Sql Server 2000 Y C# (recuperar Registros)  (Leído 2897 veces)

JaviMarciano

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Sql Server 2000 Y C# (recuperar Registros)
« en: Miércoles 1 de Agosto de 2007, 20:13 »
0
Holas! estoy tratando de trabajar con bases de datos de SQL Server 2000 desde C#, y tengo algunas dudas:

 private void Form1_Load(object sender, EventArgs e)
        {
            try
            {
                //En primer lugar se crea la conexión
                SqlConnection con = new SqlConnection("Data Source=(local);initial Catalog=master; User Id=;Password=;Integrated Security=SSPI;");
                //Se Abre la Conex
                con.Open();
                //Se Crea un comando, que en este caso crea la base de datos, utilizando la conexión con
                SqlCommand cmd = new SqlCommand("Create DataBase BaseDeDatos", con);
                //Se ejecuta el comando
                cmd.ExecuteNonQuery();
                //Se Cierra la conexión
                con.Close();
            }
            catch { }
        }

con este fragmento de código creo mi Base da Datos, bueno más o menos de esta forma logré algunas cositas, como Crear Tablas, Agregarle Columnas, Insertar Registros, Eliminarlos, Modificarlos (Ah! si a alguien le sirbe algo de esto me lo pide así lo compartimos con la comunidad) bueno el problema que tengo es el siguiente: cómo recupero registros individuales de alguna tabla en especial, porque de la única forma que pude hacerlo es mediante una Consulta (Todos los registros de la Tabla)
pues deseo poder recorrer todos los registros de la misma uno por uno, con un botón "siguiente" y otro "anterior" desde ya muchas gracias!!!!!

LoCoBoY

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Sql Server 2000 Y C# (recuperar Registros)
« Respuesta #1 en: Miércoles 1 de Agosto de 2007, 20:33 »
0
hola JaviMarciano

segun lo que entiendo la respuesta es:
hacer las consultas SQL con la clausula WHERE de esa manera te regresa solo las filas que cumplen con la condicion

por ejemplp

SELECT ID, Nombre FROM Usuarios WHERE ID = 1

Esta sentencia te regresa solo las filas de la tabla Usuarios que tengan el ID = 1

Espero te sirva, saludos....
[size=109]LoCoBoY [/size]

JaviMarciano

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Re: Sql Server 2000 Y C# (recuperar Registros)
« Respuesta #2 en: Miércoles 1 de Agosto de 2007, 21:36 »
0
Cita de: "LoCoBoY"
hola JaviMarciano

segun lo que entiendo la respuesta es:
hacer las consultas SQL con la clausula WHERE de esa manera te regresa solo las filas que cumplen con la condicion

por ejemplp

SELECT ID, Nombre FROM Usuarios WHERE ID = 1

Esta sentencia te regresa solo las filas de la tabla Usuarios que tengan el ID = 1

Espero te sirva, saludos....
Hola viejo muchas gracias por la respuesta, pero lo que necesito es recorrer cada uno de los registros de la tabla (Uno por uno desde el principio hasta el final) De alguna manera, visualizar el primer registro y luego pasar al siguiente, por ejemplo con un boton "Siguiente" y de esta forma hasta el último!
De todas maneras, reitero, muchas gracias. Si Alguien puede darme una mano con esto   estaría muy agradecido!!

jarmok

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Re: Sql Server 2000 Y C# (recuperar Registros)
« Respuesta #3 en: Jueves 2 de Agosto de 2007, 08:53 »
0
Hola
Lo que puedes hacer es hacer la consulta de la tabla entera, guardarla en un DataTable e ir mirándolas ahí, indexando en Rows.

Esta idea viene desarrollada en una web pero no me dejan poner enlaces jeje

Busca en google:

ejemplo_adonet_bases_tipo_access

y es la primera pagina.


Es para access pero para hacerte una idea de lo que te digo te puede servir.

Un Saludo

JaviMarciano

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Re: Sql Server 2000 Y C# (recuperar Registros)
« Respuesta #4 en: Jueves 2 de Agosto de 2007, 17:47 »
0
Cita de: "jarmok"
Hola
Lo que puedes hacer es hacer la consulta de la tabla entera, guardarla en un DataTable e ir mirándolas ahí, indexando en Rows.

Esta idea viene desarrollada en una web pero no me dejan poner enlaces jeje

Busca en google:

ejemplo_adonet_bases_tipo_access

y es la primera pagina.


Es para access pero para hacerte una idea de lo que te digo te puede servir.

Un Saludo
Justamente lo estoy haciendo de esa forma, pero anteriormente, lo hice de otra manera, en Visual Basi 6.0, me refiero a la idea, pero ahora no puedo encontrar ni ese código, de todos modos , muchas gracias por responder un Saludo
Espero que alguien pueda ayudarme con eso!

ronaldxl

  • Nuevo Miembro
  • *
  • Mensajes: 14
    • Ver Perfil
Re: Sql Server 2000 Y C# (recuperar Registros)
« Respuesta #5 en: Viernes 3 de Agosto de 2007, 06:51 »
0
Código: Text
  1.  
  2. //Declaras esta propiedad a nivel de clase
  3.  BindingManagerBase admin&#59;
  4. //En el evento Load de tu formulario el siguiente código
  5. //propietarios es la tabla con la que estoy trabjando
  6. SqlDataAdapter da = new SqlDataAdapter("Select * from propietarios", con);
  7.             DataSet ds = new DataSet();
  8.             da.Fill(ds);
  9.             DataTable dt = ds.Tables[0];
  10.             /*Los parametros corresponden a el nombre de la propiedad del control a  enlazar, el origen de datos, y el miembro del origen de datos, en este caso la columna Nombre de la tabla propietarios*/
  11.             Binding bind = new Binding("Text", dt, "Nombre");
  12.             textBox1.DataBindings.Add(bind);
  13.             admin = this.BindingContext[dt];
  14. //En el evento click del boton siguiente
  15.    admin.Position += 1;
  16. //En el evento click del boton anterior
  17.     admin.Position -= 1;
  18.  
  19.  
Esa es la manera automática de enlazar datos a controles, en este caso estamos enlazando a un textbox y su propiedad Text, creo que hay maneras mas prácticas y simples como el uso del BindingSource.

JaviMarciano

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Re: Sql Server 2000 Y C# (recuperar Registros)
« Respuesta #6 en: Martes 7 de Agosto de 2007, 14:47 »
0
Cita de: "ronaldxl"
Código: Text
  1.  
  2. //Declaras esta propiedad a nivel de clase
  3.  BindingManagerBase admin;
  4. //En el evento Load de tu formulario el siguiente código
  5. //propietarios es la tabla con la que estoy trabjando
  6. SqlDataAdapter da = new SqlDataAdapter("Select * from propietarios", con);
  7.             DataSet ds = new DataSet();
  8.             da.Fill(ds);
  9.             DataTable dt = ds.Tables[0];
  10.             /*Los parametros corresponden a el nombre de la propiedad del control a  enlazar, el origen de datos, y el miembro del origen de datos, en este caso la columna Nombre de la tabla propietarios*/
  11.             Binding bind = new Binding("Text", dt, "Nombre");
  12.             textBox1.DataBindings.Add(bind);
  13.             admin = this.BindingContext[dt];
  14. //En el evento click del boton siguiente
  15.    admin.Position += 1;
  16. //En el evento click del boton anterior
  17.     admin.Position -= 1;
  18.  
  19.  
Esa es la manera automática de enlazar datos a controles, en este caso estamos enlazando a un textbox y su propiedad Text, creo que hay maneras mas prácticas y simples como el uso del BindingSource.
Muchas gracias Ronaldxl, es precisamente lo que quería hacer!!
Lo siguiente es el código de lo que había hecho, pude asignarle a cada textBox el contenido del campo correspondiente, pero no enlazaba los mismos a un origen de datos como quería!

Código: Text
  1.  
  2.  
  3.      private void button1_Click(object sender, EventArgs e)
  4.         {
  5.             SqlConnection con = new SqlConnection("Data Source=(local);initial Catalog=BaseDeDatos; User Id=;Password=;Integrated Security=SSPI;");
  6.             con.Open();
  7.             ds = new DataSet();
  8.             dt = ds.Tables.Add();
  9.             SqlCommand com = new SqlCommand("Select * from TablaZ",con);
  10.             try
  11.             {
  12.                 com.ExecuteNonQuery();
  13.                 SqlDataAdapter da = new SqlDataAdapter(com);
  14.                 da.Fill(dt)&#59;
  15.                 //dataGridView1.DataSource = dt;    
  16.                 textBox1.Text= Convert.ToString(dt.Rows[0][1]);
  17.                 textBox2.Text = Convert.ToString(dt.Rows[0][2]);
  18.                 textBox3.Text = Convert.ToString(dt.Rows[0][3]);    
  19.             }
  20.             catch (Exception Ex)
  21.             {
  22.                 MessageBox.Show(Ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Hand);
  23.             }
  24.          
  25.         }
  26.  
  27.  
  28.  
  29.