Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

193
Views
¿Cómo permitir que un usuario consulte todas las filas o solo las seleccionadas?

He estado buscando esto, pero no tengo ni idea sobre el nombre de esto.

Estoy creando un modelo de datos en MySql y tengo una tabla llamada usuarios y quiero restringir las consultas de cada usuario, por ejemplo, permitir leer todas las filas de la tabla de clientes o solo permitirles consultar algunos clientes seleccionados. Es como un filtro, pero mi pregunta es, ¿cómo puedo guardar el nombre de los clientes para cada usuario o permitirles tener acceso a todos los clientes?

Mi primera idea fue crear una relación Muchos a Muchos, pero cuando creo un nuevo cliente, necesito actualizar la tabla para cada usuario que tenga las opciones para consultar a todos los clientes.

Mi segunda idea fue crear una tabla con una columna llamada selectedClients con tipo de datos de matriz y guardar ["all"] y con un "if" hacer la consulta y si seleccioné varios clientes, en ese archivo se guardará la identificación de los clientes. como ["clientID1", "clientID2"] y después, en mi middleware consultaré la tabla solo con los id de ese campo. Pero el problema es que creo que no es una buena práctica y cuando elimino un cliente, necesito eliminar cada campo de esa identificación.

¿Cómo puedo implementar esto?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

En cuanto a la base de datos, lo que desea es una relación de muchos a muchos. Muchos usuarios pueden acceder a muchos clientes. Entonces tendrá una tabla de users , una tabla de clients y una tabla de usuarios y clientes (o como quiera usersclients ). La tabla usersclients users . id (suponiendo que id es el nombre de la clave principal) a clients . id Habría 1 fila en usersclients para cada cliente al que cada usuario puede acceder.

En cuanto a los usuarios que pueden ver todos los clientes, mi pensamiento inicial es tener eso establecido como una bandera en el usuario. Luego, cuando esté construyendo la lista de clientes, haga algo como:

(pseudocódigo, disculpe cualquier influencia de C#)

 let viewableClients = []; if( user.canViewAllClients ) { clients = queryToGetAllClients(); } else { clients = user.UserClients.forEach(uc => uc.Client); }
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!