Campos que no deben aumentar en la base de datos
Tengo un sistema desarrollado en Visual Basic 6 con conexión a una base de datos en Mysql y mi problema es que tengo Datacombos y al capturar un registro es necesario que el usuario escoja entre las opciones que da cada uno de los datacombos; por ejemplo, en uno de los datacombos tienen dos opciones a escoger y si realizan dos registros todo parece perfecto, pero al capturar un tercer registro y eligen una de las opciones es cuando surge el problema, ya que las opciones del datacombo se incrementan a 3 y así sucesivamente con cada registro. ¿Cómo hago para que esto no suceda? Quiero que solo se mantengan las dos opciones y que no se incremente mi base de datos. En mi datacombo tengo las opciones de global y local solamente pero al pasar de los dos registros y llegar a tres, en el data combo aparece global, local y global (o local) ya sea el caso de lo que hayan escogido enter esas dos opciones; por lo tanto en mi base de datos se aumenta y me aparecen esas dos palabras repetidas muchas veces. Si quiero que se guarde la opción que escogieron dentro de la base de datos, pero no quiero que se muestre dentro del datacombo en el sistema más que solamente las dos opciones. Esto es parte del código que realice:
Private Sub Form_Load()
'Dim db As Connection
Set db = New Connection
Dim cbx As Recordset
db.CursorLocation = adUseClient
Dim strn As String
strn = "Driver={mysql odbc 5.1 driver};server=servidor;database=db;port=3306;uid=user;pwd=password"
db.Open strn
Set adoPrimaryRS = New Recordset
adoPrimaryRS.Open "select * from table", db, adOpenStatic, adLockOptimistic
Dim oText As TextBox
'Enlaza los cuadros de texto con el proveedor de datos
For Each oText In Me.txtFields
Set oText.DataSource = adoPrimaryRS
Next
Set DataGrid1.DataSource = adoPrimaryRS
Set DataGrid2.DataSource = adoPrimaryRS
mbDataChanged = False
SQL = "SELECT field1 FROM tabla1"
Set cbx = New Recordset
cbx.Open SQL, db, adOpenDynamic, adLockReadOnly
Set DataCombo4.RowSource = cbx
DataCombo4.BoundColumn = "field1"
DataCombo4.ListField = "field1"
DataCombo4.DataField = "field1"
Set DataCombo4.DataSource = adoPrimaryRS
Todo esto en Load dentro del Form. Espero me puedan ayudar y de antemano lo agradezco mucho.
Private Sub Form_Load()
'Dim db As Connection
Set db = New Connection
Dim cbx As Recordset
db.CursorLocation = adUseClient
Dim strn As String
strn = "Driver={mysql odbc 5.1 driver};server=servidor;database=db;port=3306;uid=user;pwd=password"
db.Open strn
Set adoPrimaryRS = New Recordset
adoPrimaryRS.Open "select * from table", db, adOpenStatic, adLockOptimistic
Dim oText As TextBox
'Enlaza los cuadros de texto con el proveedor de datos
For Each oText In Me.txtFields
Set oText.DataSource = adoPrimaryRS
Next
Set DataGrid1.DataSource = adoPrimaryRS
Set DataGrid2.DataSource = adoPrimaryRS
mbDataChanged = False
SQL = "SELECT field1 FROM tabla1"
Set cbx = New Recordset
cbx.Open SQL, db, adOpenDynamic, adLockReadOnly
Set DataCombo4.RowSource = cbx
DataCombo4.BoundColumn = "field1"
DataCombo4.ListField = "field1"
DataCombo4.DataField = "field1"
Set DataCombo4.DataSource = adoPrimaryRS
Todo esto en Load dentro del Form. Espero me puedan ayudar y de antemano lo agradezco mucho.
1 Respuesta
Respuesta de Eduardo Saligari
1