Databáze - Rumec/pb138-project GitHub Wiki
Jak zprovoznit databázi
-
týká se to backendu, tj. projekt DB-server
-
je třeba mít nainstalovaný databázový server typu PostgreSQL
- instalace skrze Docker:
docker run -p 5432:5432 --name pc-configurator-db-server -e POSTGRES_PASSWORD=mypassword -d postgres- toto vytvoří default databázi
postgres - použije se default login
postgres - výsledek by měl vypadat takto (Docker desktop):

- alternativně lze zkontrolvat pomocí příkazu
docker ps(Process Status), který vypíše kontejnery
- toto vytvoří default databázi
- instalace skrze Docker:
-
connection string se nachází v souboru
.envjako "environment variable" DATABASE_URL:- tento connection string se načítá do souboru
schema.prismaz tohoto souboru.envvolánímenv("DATABASE_URL") DATABASE_URL="postgresql://postgres:mypassword@localhost:5432/pc-configurator-db?schema=public"- tento connection string typu postgresql definuje/požaduje: ¨
- databázi
pc-configurator-db - ve schématu
public(nemusí se uvést,publicje default) - na adrese
localhost:5432(127.0.0.1:5432) - přihlášení:
- login
postgres - heslo
mypassword
- login
- databázi
- tento connection string typu postgresql definuje/požaduje: ¨
- tento connection string se načítá do souboru
-
prohlížet databázový server lze skrze program pgAdmin (https://www.pgadmin.org/download/pgadmin-4-windows/)
- POZOR: Create znamená "Přidat připojení k..."

- POZOR: Create znamená "Přidat připojení k..."
-
pokud je běžící container s Postgre databází, tak potom se k ní lze připojit na portu 5432 (127.0.0.1) pod jménem postgres a heslem mysecretpassword
další postup:
1. Jak založit tabulky
- toto typicky jednou/poprvé pro vytvoření databáze a tabulek v lokálním databázovém serveru typu PostgreSQL
2. Jak vložit data do databáze (seed)
- při potřebě resetování dat v databázi
Jak založit tabulky a databázi (migrace schématu)
- spustit
npm run migrate(to spustí skriptmigratezpackage.jsontohoto projektu)- alternativně:

- toto založí databázi, pokud neexistuje (
prisma generate dev(interně zavolaný příkaz) "generates the database if it does not exist")
- alternativně:
Jak vložit data do databáze (seed)
- v
package.jsonspustit skriptseed:
- to reálně spustí funkci
main()vseed.ts, která v aktuální verzi vymaže stará data a vloží sample data ze souborucomponents/all.ts
