hola gente
Para empezar soy nuevo y llegue al punto que kiero hacer un simple insert de dos tablas relacionadas "UNO A MUCHOS"
la idea es que tengo una tabla direcciones que tiene el campo ID_DIRE la cual es la pk y tengo la tabla personas la cual tiene como PK ID_PERSO y la FK es ID_DIRE, la cual hace la relacion con la tabla direcciones
las pk son autonumerico, estoy probando con access, aqui no puedo usar procedimientos almacenados ni trigger y todas esas cosas de las base de datos.
el codigo es el siguiente
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.OleDb;
namespace WindowsApplication1
{
class Conexion
{
private OleDbConnection conn;
public Conexion ()
{
this.conn = new OleDbConnection("provider = microsoft.jet.oledb.4.0;data source = prueba.mdb;");
conn.Open();
}
public void insertarDireccion(Direccion direccion, Persona persona)
{
OleDbCommand sql = conn.CreateCommand ();
sql.CommandText = "SELECT id_direcciones, ciudad_direcciones FROM direcciones;";
OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = sql;
OleDbCommandBuilder crear = new OleDbCommandBuilder(da);
DataSet data = new DataSet();
da.Fill(data);
DataRow fila = data.Tables[0].NewRow();
fila["ciudad_direcciones"] = direccion.Ciudad;
//fila["nombre_personas"] = persona.Nombre;
//fila["apellido_personas"] = persona.Apellido ;
data.Tables[0].Rows.Add(fila);
da.Update(data);
}
}
}
tambien tengo la clase del form donde igualo los setter con los textbox y ahi voy ingresando, por lo tanto tambien tengo la clase persona y direccion con sus respectivos set y get..
tambien quiero saber si esta es la forma correcta, esta es la programacion por capas? asi es la orientacion a objetos, o por lo menos la idea que trato de hacer, se que me falta mucho XD.
el asunto es que al insertar los datos de la persona, quiero que el id de la direccion tambien se inserte en la tabla personas para que quede como FK..
en realidad no se si voy por el buen camino, he visto unos ejemplos de dataRelations, unos mapeos, pero no se cual es la mejor manera en un caso asi, y no se que usar en .net, ya que en java estaba acostumbrado a usar hibernate y la vida era muy facil =D xD, pero aca esta el ado.net, bueno la verdad que estoy muy confundido... se me olvidaba, por que en java usaba listas e insertabas los id, bueno en fin espero que me puedan decir que soluciones son buenas que sean orientadas a objetos
ojala me puedan dar sugerencias, codigos de ejemplo, guiar un poco este tema, ya que en internet no hay mucho donde buscar acerca de las relaciones, siempre lo hacen con una tabla, :S
de antemano les agradezco,
Y POR FAVOR QUE ESTE SEA UN TEMA MAS COMUN SIEMPRE VEO PREGUNTAS PERO NO RESPUESTAS, ES COMO SI LA GENTE NO INSERTARA XD