Dónde vive la información y cómo se mantiene ordenada y confiable.
Base de datos
El lugar donde el sistema guarda sus datos de forma ordenada y permanente, aunque apagues la computadora.
- 🍽️ Analogía
- El archivero de la oficina: no es el escritorio (la pantalla) ni la persona (el programa); es donde vive la información.
- 🏢 En chzr.llc
- chzr.llc usa varias bases con propósitos distintos: una de usuarios y negocios, una de catálogos compartidos y una de herramientas.
- 😵 Lo que confunde
- Creer que la base de datos «es» el sistema. El sistema es el programa; la base guarda lo que el programa necesita recordar.
- 🤖 Si no lo sabes, la IA…
- Puede guardar datos en un archivo suelto o en el navegador, y se pierden al cambiar de computadora. Quien sabe, exige que vayan a la base.
Mini reto: Si el programa se apaga, ¿qué se pierde: los datos o el programa?
Tabla, fila y columna
Una tabla es una lista de cosas del mismo tipo. Cada fila es una cosa; cada columna es un dato de esa cosa.
- 🍽️ Analogía
- La lista de asistencia del salón: una fila por alumno; columnas: nombre, grupo, teléfono.
- 🏢 En chzr.llc
- En la tabla de cotizaciones, cada fila es una cotización; las columnas son folio, cliente, fecha, subtotal, IVA, total y estado.
- 😵 Lo que confunde
- Meter en una misma tabla cosas de distinto tipo «por comodidad».
- 🤖 Si no lo sabes, la IA…
- A veces crea una columna «datos» donde mete todo junto en texto: después no se puede buscar, sumar ni filtrar.
Mini reto: En una tabla de productos, ¿el precio es una fila o una columna?
Llave primaria (el id)
Un número único que identifica a cada fila y que nunca se repite.
- 🍽️ Analogía
- El número de folio de un recibo, o la CURP: dos personas pueden llamarse igual; su identificador no.
- 🏢 En chzr.llc
- Cada cotización tiene un identificador interno y, además, un folio legible para el cliente (por ejemplo COT-0003).
- 😵 Lo que confunde
- Usar el nombre como identificador: «Juan Pérez» hay muchos.
- 🤖 Si no lo sabes, la IA…
- Puede usar el nombre o el correo como «identificador» y todo se rompe con el primer duplicado.
Mini reto: ¿Por qué el nombre de una persona no sirve como identificador?
Relaciones y llave foránea
La forma en que se conectan las tablas: una cotización tiene muchos conceptos, y cada concepto pertenece a una sola cotización. Ese «a cuál pertenece» es la llave foránea.
- 🍽️ Analogía
- Una cuenta de restaurante (una) y sus renglones (muchos): cada renglón dice a qué cuenta pertenece. Cuando muchos se relacionan con muchos (un proveedor ofrece varios servicios y cada servicio lo ofrecen varios proveedores) se usa una tabla intermedia, como la lista de «quién sabe hacer qué» en un taller.
- 🏢 En chzr.llc
- Todo dato de negocio en chzr.llc lleva la identificación del negocio dueño; así una sola plataforma sirve a muchos negocios sin mezclarlos. En Citas, los servicios que ofrece cada proveedor viven en una tabla intermedia.
- 😵 Lo que confunde
- Querer meter «muchos» en una sola celda («producto1, producto2, producto3»).
- 🤖 Si no lo sabes, la IA…
- Puede proponer guardar los renglones dentro de la cotización como texto: imposible sumar, buscar o corregir uno solo.
Mini reto: ¿Cuántas cotizaciones tiene un concepto? ¿Y cuántos conceptos, una cotización?
Integridad referencial
La base de datos no te deja guardar un renglón que apunta a algo que no existe, ni borrar algo sin decidir qué pasa con lo que depende de él.
- 🍽️ Analogía
- El cajero del restaurante: no cobra un renglón «huérfano» que no pertenece a ninguna mesa.
- 🏢 En chzr.llc
- En Citas, si un proveedor no existe, la base no permite asignarle horarios ni servicios.
- 😵 Lo que confunde
- Creer que «con que la pantalla lo valide, basta». La base es la última defensa; la pantalla se puede saltar.
- 🤖 Si no lo sabes, la IA…
- Puede crear tablas sin reglas de unión y, meses después, aparecen renglones huérfanos por todos lados.
Mini reto: ¿Qué sería un «registro huérfano» en tu negocio?
Cascada (borrado en cascada)
Lo que pasa con lo «hijo» cuando borras al «padre»: se borra con él (cascada), se prohíbe borrar (restringir) o solo se marca como borrado.
- 🍽️ Analogía
- Cerrar un expediente: ¿tiras todos los papeles adentro (cascada), no te dejan cerrarlo mientras tenga papeles (restringir) o lo archivas (borrado suave)?
- 🏢 En chzr.llc
- En InfoScope, borrar un formulario borra también sus campos y respuestas, y borrar un campo borra las respuestas capturadas en él. Por eso el sistema lo advierte y no se puede deshacer. En Citas, borrar un proveedor borra sus horarios, servicios y bloqueos.
- 😵 Lo que confunde
- Creer que la cascada es «mala». Es útil, pero peligrosa si no se le avisa claramente a quien borra.
- 🤖 Si no lo sabes, la IA…
- Puede activar la cascada por defecto sin avisar a nadie; alguien borra un campo y pierde trescientas respuestas.
Mini reto: Si borras a un cliente, ¿deberían borrarse también sus cotizaciones antiguas? ¿Por qué sí o por qué no?
CRUD y borrado suave
Las cuatro cosas que se le hacen a cualquier dato: Crear, Leer, Actualizar y Borrar. Casi todo el software es CRUD con adornos. El borrado suave es marcar como borrado sin quitar la fila.
- 🍽️ Analogía
- Una libreta de contactos: agregas, consultas, corriges y tachas. Tachar es borrado suave; arrancar la hoja es borrado real.
- 🏢 En chzr.llc
- Una cotización «eliminada» en Quote Link sigue en la base con estado «eliminado»: se conserva el rastro y se puede revisar.
- 😵 Lo que confunde
- Creer que «borrar» siempre significa quitar de verdad. En sistemas con dinero casi nunca conviene.
- 🤖 Si no lo sabes, la IA…
- A veces hace un borrado real sin preguntar; se pierde el rastro para siempre y no queda auditoría.
Mini reto: ¿Por qué un contador prefiere «anular» un recibo en lugar de arrancarlo?
Consulta (query) y SQL
Una pregunta que se le hace a la base de datos: «dame las cotizaciones de este mes de más de $5,000». SQL es el idioma en que se escribe esa pregunta.
- 🍽️ Analogía
- Pedirle a la recepcionista del archivero: «tráeme todos los folios de marzo».
- 🏢 En chzr.llc
- El tablero de Finanzas es, por debajo, preguntas como «suma los gastos de gasolina de este mes de este negocio».
- 😵 Lo que confunde
- Creer que hay que saber SQL para dirigir a una IA. Basta con saber pedir bien la pregunta.
- 🤖 Si no lo sabes, la IA…
- Puede hacer consultas que traen datos de otros negocios porque nadie le dijo «siempre limita por negocio».
Mini reto: Escribe en español la pregunta para «los gastos de gasolina de septiembre».
Índice
Un atajo que hace que buscar sea rápido cuando hay muchísimos datos.
- 🍽️ Analogía
- El índice del libro: no lees todas las páginas para encontrar «IVA».
- 🏢 En chzr.llc
- Las tablas donde se guardan bitácoras tienen índices por usuario y fecha para que los límites diarios se calculen rápido.
- 😵 Lo que confunde
- Creer que más índices siempre es mejor: cada uno hace un poco más lento el guardar.
- 🤖 Si no lo sabes, la IA…
- Suele olvidarlos, y todo funciona «bien» hasta que la tabla crece y la pantalla tarda segundos.
Mini reto: ¿En qué momento notarías que a tu sistema le falta un índice?
Normalización («no repitas datos»)
Guarda cada dato una sola vez y refiérete a él por su identificador.
- 🍽️ Analogía
- En la libreta de fiado no escribes la dirección de la señora Lupe en cada renglón: escribes «Lupe» y su ficha vive en otra página.
- 🏢 En chzr.llc
- El sistema universal de contactos: una persona es una sola ficha que usan todas las apps, en lugar de que cada app tenga su propia lista.
- 😵 Lo que confunde
- Creer que repetir «es más fácil». Lo es, hasta que el dato cambia.
- 🤖 Si no lo sabes, la IA…
- Puede duplicar el nombre y el teléfono del cliente en seis tablas distintas.
Mini reto: Si Lupe cambia de teléfono, ¿en cuántos lugares tienes que corregirlo?
Transacción (todo o nada)
Un grupo de pasos que se guardan todos juntos o ninguno.
- 🍽️ Analogía
- Una transferencia bancaria: si el dinero salió de tu cuenta pero no llegó a la otra, se revierte todo.
- 🏢 En chzr.llc
- Al agendar una cita, el sistema guarda la cita y sus servicios dentro de una transacción y vuelve a verificar que el horario siga libre, para que dos clientes no tomen el mismo horario.
- 😵 Lo que confunde
- Creer que «a la vez» no pasa. Pasa, y es la causa de errores raros que no se repiten cuando los buscas.
- 🤖 Si no lo sabes, la IA…
- Puede guardar la cita y luego los servicios en dos pasos separados; si el segundo falla, queda una cita a medias.
Mini reto: ¿Qué pasaría si dos clientes reservan el mismo horario en el mismo segundo?