Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Baza Danych] Rozwiązanie problemu dużej ilości pustych (null) wartości w tabelkach.


sqarex

Rekomendowane odpowiedzi

Opublikowano

0.png

 

 

Witam. Denerwuje was taki widok? A może wasz kreator item/mob_proto baza -> klient nie działa przez puste tabelki?
Oto rozwiązanie:

Potrzebne nam będą: navicat, odrobina chęci i notepad++.
Gdybyśmy nie mieli tego trzeciego to szukamy czegoś dla siebie:

http://notepad-plus-plus.org/download/v6.3.html]http://notepad-plus-plus.org/download/v6.3.html

Logujemy się do naszego mysqla przez navicata, wchodzimy do bazy "player" i wybieramy tabelę, która nas interesuje np. item_proto, klikamy PPM i wybieramy Dump SQL File:

 

1.png

 

Pojawi się okno wyboru miejsca zapisu naszj tabeli:

 

1.png

 

Wybieramy np. pulpit, Pojawi nam się takie oto okienko:

 

3.png

 

 

Czas w milisekundach, więc odbywa sie to bardzo szybko. Klikamy "Close". Otwieramy nasz plik .sql za pomoca notepad++:

 

4.png

 

przyglądamy się plikowi. Interesują nas słowa "null". Widzimy je w dwóch wersjach:

 

1b.png

 

oraz

 

1a.png

 

W menu kontekstowym wybieramy "Szukaj". Interesuje nas opcja "Zamień". Możemy też użyć skrótu klawiaturowego Ctrl + H ;)

 

5.png

 

W "szukany tekst" wpisujemy: null

W "zamień na" wpisujemy: '0' (tak w pojedyńczym cudzysłowie)

Zaznaczamy opcję "Uwzględniaj wielkość liter", gdyż jak może zauważyliście na obrazku wyżej słowo null występuje też w wersji napisanej wielkimi literami, a tego nie zmieniamy bo jest to definicja naszej tabeli.

 

6.png

 

Wybieramy "zamień wszystkie"

 

7.png

 

Zapisujemy plik ;)

 

8.png

 

Przeciągamy nasze pliki do bazy (pojedyńczo):

 

9.png

 

Wyskoczy nam okienko potwierdzenia naszej chęci zamiany bazy. klikamy "Start":

 

10.png

 

Jeśli wszystko było wykonywane zgodnie z poradnikiem navicat potwiredzi nasze zmiany okienkiem:

 

11.png

 

Problem pustych tabelek zniknął :)

Proszę o zdjęcie tych kilku procent ;)

Pozdrawiam serdecznie.

 

Kiedyś wam wszystkim udowodnię ;)

Opublikowano

Nie działa u mnie taki sposób. może to przez navicat Lite. Zresztą może komuś się przyda???

Kiedyś wam wszystkim udowodnię ;)

Opublikowano

update tabela set kolumna=0 where kolumna = 'Null';

i po cholere ci dumpowac baze?

 

 

update tabela set kolumna=0 where kolumna = 'Null';
 

Moja literowka

Jaka jest różnica między tymi dwoma?

Opublikowano

bez tych '', czyli:

update kolumna set tabela=0 WHERE tabela=null;

System nie traktuje nulla jako wartosci tekstowej tylko jako pusta wartosc..

Jak to nie zadziala mozna i tak:
update kolumna set tabela=0 WHERE tabela='';

Opublikowano

bez tych '', czyli:

update kolumna set tabela=0 WHERE tabela=null;

System nie traktuje nulla jako wartosci tekstowej tylko jako pusta wartosc..

Jak to nie zadziala mozna i tak:

update kolumna set tabela=0 WHERE tabela='';

Na to sa rozne sposoby wiec prosze nie wywyzszaj sie tak

 

Ale twój nie zadziała -.-

to wystarczy zmienic = 'Null'

na is null

btw. twoj tymbardziej nie dziala :)

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...