Visual Basic y Sql 2000

espejorisco
26 de Junio del 2005
Hola:
Estoy realizando mi proyecto final de carrera el cual consiste en controlar un PLC a través del Puerto serie usando el protocolo MODBUS, cuyos resultados los vuelco luego en una Base de Datos creada en SQL Server 2000, mediante procedimientos almacenados, no tengo problemas para guardar y modificar las tablas q ya he creado con anterioridad, traigo los datos a un array y luego de modificar algún elemento del mismo, vuelvo a guardarlo en la misma tabla, ahora viene mi duda... cómo puedo hacer para crear, abrir o modificar una tabla en cualquier parte del disco? puesto q cuando accedo a cualquier tabla existente lo hago indicando en connectionstring (uso ADODB) la ruta a una DB existente y además indicando en el store procedure la tabla de dicha DB si casualmente esto es lo q puede ser variable, en otras palabras lo q quisiera es poder obtener una ventana del tipo Abrir/Guardar q me muestre las Tablas existentes para poder modificarlas, y además tener la posibilidad de generar nuevas tablas en cualquier parte del disco. Espero haber podido especificar bien mi duda. El procedimiento q uso para aceder a los datos para modificarlos es el q sigue:
******************************************
Public Sub modificar_bob()

Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim i As Integer

Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
cn.ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=Modbus;Data Source=L"
cn.Open

For i = 0 To 124
Set rs = cn.Execute(" exec modificar_bob @id_bob = '" & i & "', estado_bob = '" & bobinas(i) & "', @hora_mod = '" & Date + Time & "' ")
' bobinas(i) es el array q uso para obtener los datos del PLC y tenerlos en memoria
Next i
cn.Close
End Sub
*******************************************
el store procedure para modificar es el siguiente:


CREATE PROCEDURE modificar_bob
@id_bob smallint,
@estado_bob bit,
@hora_mod datetime
AS
UPDATE mb_bob
SET
estado_bob = @estado_bob,
hora_mod = @hora_mod
where
id_bob = @id_bob

Return -1
GO
********************************************
A quien se haya tomado el trabajo de leer todo este "testamento" le agradezco de antemano por haberse tomado el trabajo y a quien me pueda ayudar, quedaré doblemente agradecido.

Carlos Espejo Risco