Ver Mensaje Individual
  #5 (permalink)  
Antiguo 17/11/2012, 13:12
Avatar de jhonwilliams
jhonwilliams
 
Fecha de Ingreso: marzo-2004
Ubicación: Copacabana - Colombia
Mensajes: 1.484
Antigüedad: 20 años, 9 meses
Puntos: 76
Respuesta: Ingresar registros a tablas diferentes relacionas. VB.Net MySQL

Hola, con relacion al codigo usa el Highlight. Mira como se ve de bonito, mas facil de leer y comprender

Código VB:
Ver original
  1. El Código es algo asi:
  2. Try
  3. 'sSqlOperaciones = "INSERT INTO operaciones (campo1,campo2,campo3,campo4,campo5) VALUES ('" & txt1.Text & "','" & txt2.Text & "','" & txt3.Text & "','" & txt4.Text & "','" & txt5.text & "')"
  4.  
  5. ' Se crean los comandos para el SQL
  6. cmdOperaciones = New MySqlCommand()
  7. cmdOperaciones.Connection = conexionBD
  8. cmdOperaciones.CommandText = sSqlOperaciones
  9. cmdOperaciones.CommandType = CommandType.Text
  10. ConsultaSQL = cmdOperaciones.ExecuteReader()
  11. ConsultaSQL.Read()
  12. Dim iNroRegistos As Integer = ConsultaSQL.RecordsAffected
  13. If iNroRegistos = 0 Then
  14. MessageBox.Show("No se grabó el registro en la tabla!!!!")
  15. Else
  16. MessageBox.Show("Registro grabado en la tabla!!!")
  17. fLimpiar_textbox()
  18. End If
  19. ConsultaSQL.Close()
  20. Catch ex As Exception
  21. MessageBox.Show("Error en el Registro!!! " & vbCrLf & ex.Message.ToString)
  22. Me.Visible = False
  23. 'frmMenu.Show()
  24. End Try
  25. End If

La mejor forma de hacer ese INSERT es usando Parametros. asi:

Código C#:
Ver original
  1. try
  2.                 {
  3.                     cn.Open();
  4.                     MySqlParameter pIdOwner = new MySqlParameter("@ID_OWNER", MySqlDbType.String, 40) { Value = id_owner };
  5.                     MySqlParameter pCodeOwner = new MySqlParameter("@COD_OWNER", MySqlDbType.String, 20) { Value = cod_owner };
  6.                     MySqlParameter pName = new MySqlParameter("@NAME", MySqlDbType.String, 80) { Value = name };
  7.                     MySqlParameter pTelephone = new MySqlParameter("@TELEPHONE", MySqlDbType.String, 45) { Value = telephone };
  8.                     MySqlParameter pCellPhone = new MySqlParameter("@CELLPHONE", MySqlDbType.String, 45) { Value = cellphone };
  9.                     MySqlParameter pAddress = new MySqlParameter("@ADDRESS", MySqlDbType.String, 80) { Value = address };
  10.                     MySqlParameter pMail = new MySqlParameter("@MAIL", MySqlDbType.String, 80) { Value = mail };
  11.  
  12.                     query = "INSERT INTO tblowners " +
  13.                         "(ID_OWNER, " +
  14.                         "COD_OWNER, " +
  15.                         "NAME, " +
  16.                         "TELEPHONE, " +
  17.                         "CELLPHONE, " +
  18.                         "ADDRESS, " +
  19.                         "MAIL) " +
  20.                         "VALUES " +
  21.                         "( " +
  22.                         "@ID_OWNER, " +
  23.                         "@COD_OWNER, " +
  24.                         "@NAME, " +
  25.                         "@TELEPHONE, " +
  26.                         "@CELLPHONE, " +
  27.                         "@ADDRESS, " +
  28.                         "@MAIL " +
  29.                         ") ";
  30.  
  31.                     MySqlCommand cmd = new MySqlCommand(query, cn);
  32.                     cmd.Parameters.Add(pIdOwner);
  33.                     cmd.Parameters.Add(pCodeOwner);
  34.                     cmd.Parameters.Add(pName);
  35.                     cmd.Parameters.Add(pTelephone);
  36.                     cmd.Parameters.Add(pCellPhone);
  37.                     cmd.Parameters.Add(pAddress);
  38.                     cmd.Parameters.Add(pMail);
  39.  
  40.                     result = cmd.ExecuteNonQuery();
  41.  
  42.                 }
  43.                 catch (Exception ex)
  44.                 {
  45.                     Common.CallException(ex);
  46.                 }
  47.                 finally
  48.                 {
  49.                     cn.Close();
  50.                 }

En ese ejemplo no hay ninguno de fecha pero si lo hubiese se enviaba asi:

Código C#:
Ver original
  1. MySqlParameter pDATE_CALL = new MySqlParameter("@DATE_CALL", MySqlDbType.DateTime ) { Value = call.DATE_CALL   };

El tipo se define con el MySqlDbType

Estas trabajando con el MySQLConnector?

Saludos
__________________
Si mi respuesta te ha ayudado, agradezco que me regales unos puntos de Karma XD.

"Una mujer sería encantadora si uno pudiera caer en sus brazos sin caer en sus manos." (Ambrose Bierce)