![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 573 Pomógł: 6 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam encje i tworzę kolumnę kategorie
/** * @ORM\ManyToOne(targetEntity=DbmGalleriesCategory::class, inversedBy="dbmGalleries") * @ORM\JoinColumn(nullable=false) */ private $category; po utworzeniu migracji daje mi to w tabeli bazy danych typ: int(11) Nie potrzebne jest tu jednak int(11) wystarczy tinyint(2), wszystkich kategorii jest mniej iż 100 i nigdy więcej tu nie będzie. Jak zmienić encje, aby po migracji dała w bazie danych typ: tinyint(2) ? Ten post edytował Malinaa 1.07.2021, 21:19:39 -------------------- I welcome you on the Internet >>> Design by Malina
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
* @ORM\Column(type="tinyint")
Dokumentacja czy google naprawde nie boli ![]() Nie mniej jednak powinienies miec na uwadze ze albo mozesz miec problemy albo juz beda bo Cytat There is no tinyint type in Doctrine 2. Reason is straightforward: A Doctrine type defines the conversion between PHP and SQL types, independent from the database vendor you are using. All Mapping Types that ship with Doctrine are fully portable between the supported database systems. You should pick one of these: integer: Type that maps a SQL INT to a PHP integer. smallint: Type that maps a database SMALLINT to a PHP integer. bigint: Type that maps a database BIGINT to a PHP string. Ale dawno sie nie bawilem w doctrine wiec moze to olali -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 573 Pomógł: 6 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Dokumentacja czytelna jako tako
![]() więc próbowałem z smalllint, ale tu też nie jest dobrze - po zmianie klucza z integer kolumna przestaje być kluczem i zaś trzeba rzeźbić ręcznie, aby z tego wyjść. Wystarczy, że chcesz coś zoptymalizować i już jest problem (dziadowskie to Doctrine jak cholera), musisz robić standardowo chałę i wówczas jest no problem - noo działa sukces. Zostawię int(11) - działa, więc co chcę więcej (będę mieć fajną cięższą bazę - no problem). -------------------- I welcome you on the Internet >>> Design by Malina
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Primo jeśli chcesz mieć smallint to musisz zmienić i w tabeli źródłowej i w tabeli dowiązanej (FK wymaga tego samego typu)
Secundo zawsze możesz sobie migrację napisać sam która to wytworzy i nie musisz się opierać o doctrynowy Diff |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 30.06.2025 - 01:00 |