Impedir que importen mis tablas y consultas de una BD.mde

Como impedir que importen las tablas vinculadas y consultas de una base de datos .mde

2 Respuestas

Respuesta
1

La forma más sencilla es poner las tablas y consultas como ocultas. Los formularios e informes siguen "trabajando" igual. De forma que si desde otra base intentan importar las tablas o consultas, no le aparecen

También podrías ponerle a los nombre de las tablas y consultas Usys delante, por ejemplo, UsysClientes. Así Access entiende que son tablas de sistema y no las muestra.

¡Gracias! Gracias por tu ayuda, me funciona de maravilla, saludos desde Cuba

bueno, debí borrar el .mde para hacer un arreglo, las tablas y consultas en el .mdb siguen con sus propiedades en oculto pero ahora se pueden importar desde una nueva base de datos, no entiendo que ha sucedido, sabe usted?

donde oculto? en el .mde? o ya desde la base de datos las tablas y en la aplicación las consultas? me he liado ahora

Si tengo la base Nocon con una tabla llamada Clientes y la selecciono y al pulsar el botón de la derecha del ratón le doy a Propiedades

Marco la casilla Oculto y pulso Aplicar.

Me voy a otra base de datos y pulso Datos Externos-Importar de la base Nocon

Ya no me aparece la tabla Clientes, por lo que no pueden seleccionarla para importarla.

pues no se por que mi access no lo hace

tablas ocultas

propiedades de la tabla

tablas ocultas que se ven en una base nueva y se dejan importar

será que la base está hecha en 2003 y la nueva base que abro para hacer la prueba de importación es , cuenta algo eso?

será que la base está hecha en 2003 y la nueva base que abro para hacer la prueba de importación es 2016, cuenta algo eso?

Pulsa Archivo-Opciones-Base de datos actual-Navegación-Opciones de navegación y "desmarca" la casilla señalada con una flecha

amigo, se ocultan pero se pueden seguir copiando, y no se que pensar y me da pena con usted, no se le ocurre que puede ser u otra variante, hasta le eliminé provisionalmente unas instrucciones para compactar y reparar la base de datos desde la aplicación, que era lo último que había hecho antes de pasar a ocultar las tablas y las consultas y nada

amiho Julián, ya, al parecer se mareaba, no se, lo repetí y ya no las muestra, un millón de gracias.

De todas formas, cuando conviertes una base mdb en mde lo que hace es compilar el código y ocultarlo. Por tanto, puedes tener las tablas de "trabajo" en una base situada en cualquier lugar del ordenador, incluso como oculta y poner en la que estés trabajando instrucciones como, por ejemplo

Docmd.runsql"INSERT INTO OtraTabla ( CódPostal ) IN 'C:\Users\cabarcos\Documents\Programas\Usar.accdb' SELECT Clientes.CódPostal FROM Clientes"

Es decir, en el formulario donde estés trabajando escribes, por ejemplo, un código postal y al pulsar un botón o en cualquier otro evento, le está diciendo que te lo guarde en la tabla Otra Tabla de la base Usar que está en...

Lo mismo para traer datos desde ella. Luego, cuando la hayas convertido em mde, el código se compila, por tanto jamás podrán saber donde están los datos, por lo que tampoco podrán saber de donde puedan importar.

¡Gracias! Por todo amigo

Nuevamente con problemas. Después de haber estado usando un código para que me compacte y repare la base de datos, donde están las tablas, ahora me da un error y no he podido encontrar la solución. El código:

Private Sub Form_Close()
' Compactar una base de datos con ADO
Dim sDBTmp As String
Dim je As JRO.JetEngine
'
On Error GoTo ErrCompactar
'
Set je = New JRO.JetEngine
'
' Crear un nombre "medio" aleatorio
sDBTmp = "D:\SG RADIO\DBT_Datos_SGR_v2.mdb"
' Asegurarnos de que no existe una base con el nombre temporal
If Len(Dir$(sDBTmp)) Then
Kill sDBTmp
End If
'
'MsgBox " Compactando la base de datos..."
' Compactar la base de datos
je.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\SG RADIO\DatosSGRv2.mdb;Jet OLEDB:Database Password=cd2023;", _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sDBTmp & ";Jet OLEDB:Database Password=cd2023;"
'
' Eliminar la base de datos original
Kill "D:\SG RADIO\DatosSGRv2.mdb"
'
' Renombrar la base temporal con el original
Name "D:\SG RADIO\DBT_Datos_SGR_v2.mdb" As "D:\SG RADIO\DatosSGRv2.mdb"
'
'MsgBox " Base de datos compactada."
'
Exit Sub
'
ErrCompactar:
' Mostrar el mensaje de error
MsgBox "Error al compactar la base de datos:" & vbCrLf & _
Err.Number & " " & Err.Description, _
vbExclamation, "Error al compactar la base de datos"
Err.Clear
MsgBox " *** Error al compactar la base de datos ***"
End Sub

me dice esto

Probablemente te falte alguna referencia. Cuando te suceda eso, en la ventana del editor de VB pulsa Herramientas-Referencias y mira si en alguna te pone que falta.

Respuesta
1

Establezca una contraseña al mde y oculte las tablas vinculadas y consultas. Si quiere más seguridad y velocidad no utilice tablas vinculadas, le dejo este video donde mediante un módulo de clase puede hacerlo.

https://youtu.be/tQGMc_pvuZk 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas