Jump to content

Nie działa skrypt na ekwipunek


Recommended Posts

Nie wiem czy mogę dodać link, więc w razie czego wybaczcie: https://community.multitheftauto.com/ind ... ls&id=5409

A więc, ostatnio chciałem wypróbować ten o to skrypt, ale mam pewien problem. Tak jakby osoba, która wejdzie na serwer, zarejestruje się, nie jest zapisywana w bazie danych...

http://scr.hu/1ilh/q5kye

Ekwipunek działa tylko tym osobom, które były w bazie od początku.

Może ten żółty wykrzynik coś mówi, ale nie rozumiem... pisze tam coś w stylu "inventarinfo nie posiada klucz głównego"

Pewnie robie jakiś prosty błąd, ale jeżeli chodzi o SQL to jestem nowy.

SQL postawione jest na moim kompie programem XAMPP

Jeżeli ktoś ma ochotę mi pomóc to poradnik do instalacji: https://www.youtube.com/wa...ture=plpp_video

Jeżeli będzie taka możliwość postaram się odwdzięczyć za pomoc, jest to bardzo ważne.

Edited by Guest
Link to comment

Nie używałem nigdy tego skryptu więc Ci z nim nie pomogę, ale ostrzeżenie które widzisz - o braku unikalnej kolumny - świadczy o tym, że ta baza jest źle skonstruowana. Tabela nie posiada żadnego indeksu, wszystkie operacje na niej wymagają przewertowania wszystkich rekordów. Wszystko będzie działać dobrze, dopóki na serwerze nie pojawi Ci się więcej graczy, wtedy może się okazać że sprawdzenie ekwipunku jednego zajmuje kilka sekund i laguje Ci cały serwer.

Możliwym rozwiązaniem może być dodanie takiego indeksu na polu Name, np. poprzez

  
ALTER TABLE inventarinfo ADD PRIMARY KEY p1 (Name) 
  

Sam fakt, że ta tabela nie posiada indeksów jest znakiem, że coś jest nie w porządku z tym skryptem.

edit: rozważ skorzystanie z implementacji zawartej w tym gamemodzie: https://github.com/lpiob/MTA-XyzzyRP - nie jest może ona wzorcowa (teraz mógłbym napisać ją lepiej), ale świetnie radzi sobie ze swoim zadaniem.

Link to comment

samo dodanie klucza głównego nic nie pomoże, skoro nie będzie się z niego korzystać - trzeba modyfikacji skryptu (a autor widzę nie ogarnia niczego poza instalowaniem gotowych zasobów)

a jeżeli baza posiada klucze jako takie, a nie posiada klucza głównego - też nic się nie stanie, a wybieranie/kasowanie/itd będzie szybkie.

choć ja i tak nigdy nie projektuję tabelek bez klucza głównego - ot tak, żeby było jedno jasne ID do odniesienia się, nawet jak nigdy z niego nie korzystam

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...