• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

MySql - Wartość Domyślna

Object Storage Arubacloud
0 głosów
1,330 wizyt
pytanie zadane 6 kwietnia 2020 w SQL, bazy danych przez kubekszklany Gaduła (3,190 p.)
Witam. Mam krótkie pytanie dotyczące typów w bazie danych mysql, mianowicie które z nich nie muszą mieć zdefiniowanych wartości domyślnych? Kiedyś dawno temu pamiętam że jeśli ustawiłem "domyślną wartość" na "brak" to np. w wartości typu TEXT nie było wpisywane nic, a np. w wartości typu INT wpisywane było 0. Teraz jeśli nie ustawię "wartości domyślnej" na np. "zdefiniowaną następująco" to mam błąd, że dana kolumna nie posiada domyślnej wartości. Nie używałem przez długi czas mysql'a i coś się w nim zmieniło czy ja coś źle robię?

1 odpowiedź

0 głosów
odpowiedź 7 kwietnia 2020 przez DanJ93 Użytkownik (860 p.)
komentarz 7 kwietnia 2020 przez kubekszklany Gaduła (3,190 p.)
Chodzi mi o to że kiedyś jak nie wpisałem nic do kolumny z typem np. liczbowym to z automatu wpisywało sie 0, teraz jak nic nie wpisze to mam błąd, że kolumna nie posiada domyślnej wartości.
komentarz 7 kwietnia 2020 przez DanJ93 Użytkownik (860 p.)
Pokaż błąd, zapytanie oraz strukturę tabeli i ich atrybuty
komentarz 8 kwietnia 2020 przez kubekszklany Gaduła (3,190 p.)


 

Wiem, że w ustawieniach domyślnych zamiast brak mogę dać np. zdefiniowane następująco, albo włączyć wartość null. Wydaje mi się jednak, że kiedyś przy takich ustawieniach w pola tekstowe wpisywało pusty "string" a w pola liczbowe 0. Teraz wywala błąd.

W trakcie pisania tego komentarza przyszło mi do głowy żeby odpalić starego xamppa. I jest tak jak mówiłem, przy tej samej konfiguracji, na starym xampie wywala tylko ostrzeżenie, ale polecenie się wykonuje, wartości się wpisują i tak jak mówiłem w typy tekstowe wpisuje się pusty "string" a w liczbowe 0. Natomiast na linuxie i prawdopodobnie najnowszej wersji mam błąd i polecenie się nie wykonuje.

komentarz 8 kwietnia 2020 przez DanJ93 Użytkownik (860 p.)
Więc zapewne chodzi o podstawową konfigurację danej bazy danych.

Najszybciej w takim układzie będzie dodać wartość domyślną, co w przypadku brak podanej wartości zaowocuje dodaniem tej domyślnej
komentarz 8 kwietnia 2020 przez kubekszklany Gaduła (3,190 p.)
edycja 8 kwietnia 2020 przez kubekszklany

Najszybciej w takim układzie będzie dodać wartość domyślną.

Przy małej bazie danych zapewne tak, ale przy dużej? Dlatego zadałem pytanie, bo szukam jak to zmienić dla całej bazy danych.

EDIT: Dobra, znalazłem rozwiązanie. Jak ktoś ma jeszcze taki problem to trzeba wpisać sql_mode="" do pliku my.cnf, znajduje się on najczęściej w /etc/mysql/my.cnf. Oczywiście można coś wpisać do tych pustych cudzysłowów, ważne żeby nie było to ani STRICT_ALL_TABLES, ani STRICT_TRANS_TABLES, bo te wpisy powodują błąd zamiast ostrzeżenia.

Podobne pytania

0 głosów
1 odpowiedź 130 wizyt
pytanie zadane 22 czerwca 2020 w C i C++ przez RufinB Obywatel (1,830 p.)
0 głosów
1 odpowiedź 254 wizyt
0 głosów
3 odpowiedzi 128 wizyt
pytanie zadane 22 marca 2020 w SQL, bazy danych przez Greeenone Pasjonat (16,100 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...