![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Moderatorzy Postów: 2 921 Pomógł: 269 Dołączył: 11.08.2005 Skąd: 127.0.0.1 ![]() |
Mam pewien nietypowy problem. W bazie danych znajdują się dwie tabele: tabuser i tabprofile. W tabeli tabprofile znajduje się pole iduser, które jest kluczem obcym. Używając join-a stworzyłem widok, który ułatwi mi pobieranie danych o użytkowniku. I rzeczywiście, jest to wygodne rozwiązanie w przypadku pobierania danych. Jednak w przypadku usuwania lub dodawania danych nie jest już tak różowo - niepoprawne zapytanie i błąd.
Rozwiązałem ten problem w taki sposób, że klasa Account agreguje klasy User i Profile, które są odpowiedzialne za operacje na danych w odpowiednich tabelach. Rozwiązanie to sprawdza się w praktyce, jednak moim zdaniem jest nieco przekombinowane. Macie jakieś pomysły na rozwiązanie tego problemu? Połączenie tabel w jedną nie wchodzi w grę, podobnie jak funkcje trigger. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 2 921 Pomógł: 269 Dołączył: 11.08.2005 Skąd: 127.0.0.1 ![]() |
1. jaka baza? (google mowi ze da sie zrobic insert do kolumn z tylko jednej tabeli!) 2. bez triggerow to ciezko (bo z tego co wiem - nie uzywalem - to wlasnie nimi sie to zalatwia) 1. Baza dowolna. Rozwiązanie musi być w pełni przenaszalne (oczywiście w granicach rozsądku - PostgreSQL, MySQL, DB2, Oracle, MSSQL, Sybase). 2. W związku z powyższym nie może być to trigger ani żadna funkcja |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 11:09 |