LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Varias computadoras utilizando misma base de datos access

Solved!
Go to solution

Buenos dias

 

Estoy haciendo un programa en labview donde varias computadoras van a ingresar, actualizar , modificar informacion de una tabla, mi consulta es que si  coloco la base de datos (access) en un servidor y a varias computadoras les instalo el ejecutable ? no va haber problemas que al mismo tiempo abra desde diferentes maquinas  la tabla de access?

 

Gracias

0 Kudos
Message 1 of 8
(3,397 Views)

translation:

 

I'm making a program in labview where several computers will enter, update, modify information in a table my question is that if I put the database (access) on a server and several computers will install the executable? there will not be problems at the same time from different machines open the access table?

Putnam
Certified LabVIEW Developer

Senior Test Engineer North Shore Technology, Inc.
Currently using LV 2012-LabVIEW 2018, RT8.5


LabVIEW Champion



0 Kudos
Message 2 of 8
(3,392 Views)

If you don't want to use locking transactions (I don't even think Access supports this), you need to design your database so that each time you modify a field, a new record is created, instead of modifying the existing record.  Normaly, you can accomplish this with an Auto-Increment Field in you table index.  The record will also need a timestamp, to make it possible to query for the single newest result.  This method allows multiple clients to read, and modify data at the same time without conflict, since each client will write its own version of the original record.

 

Any client reading the table before a new write is performed will get the original data.  All clients reading the table after a write will get the newest written data.

 

I don't recall the exact SQL syntax at the moment, but it has "LIMIT 1" at the end of the query.  I hope this helps.

 

Si no desea utilizar las "Locking Transactions" (que ni siquiera creo que Access admite esto), es necesario el diseño de su database para que cada vez que se modifica un "Field", se crea un nuevo "Record", en lugar de modificar el "Record" existente. Normalmente, usted puede lograr esto con un "Field" de incremento automático en el que índice de la tabla. El "Record" también tendrá una marca de tiempo, para que sea posible consultar el resultado individual más reciente. Este método permite que varios clientes para leer y modificar los datos al mismo tiempo, sin conflictos, ya que cada cliente va a escribir su propia versión del "Record" original.

Cualquier cliente que mira la tabla antes de que se realice una nueva escritura obtendrá los datos originales. Todos los clientes que miran la tabla después de una escritura obtendrán los datos más recientes escritos.

No recuerdo la sintaxis exacta SQL en el momento, pero tiene "LIMIT 1" al final de la "Query". Espero que esto ayude.

Machine Vision, Robotics, Embedded Systems, Surveillance

www.movimed.com - Custom Imaging Solutions
Message 3 of 8
(3,384 Views)

Do you think I will have issues in this case?

0 Kudos
Message 4 of 8
(3,383 Views)

Database applications and LabVIEW can be very robust, if you design your database well.

 

My advice to you is to make good use of relations, and don't try and put everything in one table.  If you want additional assistance, you can post an example of what kind of data you need to store in the database, and I can guide you on how to proceed.

Machine Vision, Robotics, Embedded Systems, Surveillance

www.movimed.com - Custom Imaging Solutions
Message 5 of 8
(3,379 Views)

 

In the database the people going to put complaint information , but i will have many users , first the people that find the issue going to put a information of the issue , affert produccion , improvements will go to upgrade information for what are doing, and finally quality accepted las mejoras.

with this information will are going to make graphs and indicators

 

I going to use string , numbers and time

0 Kudos
Message 6 of 8
(3,373 Views)
Solution
Accepted by Mayub

Hola Mayub, 

 

Por el tipo de aplicación que describes, realmente al acceso a la base de datos no sería muy complejo. La escritura (si la cantidad de datos que estás escribiendo es corta como en tu aplicación) se puede hacer en un algunos segundos o incluso menos. El acceso simultáneo empezaría a ser un problema si la cantidad de campos a leer/escribir incrementa (100+ campos).

 

Lo que podrías hacer en el caso de tener muchos usuarios, es hacer que tu programa maneje errores de escritura a la DB:  En caso de que la función de escritura a la DB marqué algún tipo de error puedes volver a intentar la operación. Agrego una imagen de cómo se podría hacer esto: 

 

DB.PNG

Espero esto te sea de utilidad!

 

Saludos y muy buen día!

 

José Alberto G.
National Instruments
ELP Support Engineer
www.ni.com/soporte
Message 7 of 8
(3,348 Views)

Muchas gracias voy a intentarlo!

0 Kudos
Message 8 of 8
(3,342 Views)