Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> MySQL, Baza Danych i problem z dodaniem TYPU
Zenobiusz
post 17.09.2019, 12:07:11
Post #1





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 17.05.2019

Ostrzeżenie: (0%)
-----


Witam.

Mam Pole 'ID' ktore ma się składać z numeru i liczb ze średnikiem np. 98 - A056B i problem jest w tym że zamiast liter zapisuje mi do bazy danych liczby. Czy wiecie jaki TYP użyć ? Używam AI oraz UNSIGNED ZEROFILL bo w numerach na początku występują kody rozpoczynjące się od zera np 00 - AF456
Go to the top of the page
+Quote Post
trueblue
post 17.09.2019, 12:33:00
Post #2





Grupa: Zarejestrowani
Postów: 5 521
Pomógł: 1505
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Na początku występuje liczba, ale potem już nie. Tak więc na pewno nie typ INT i nie AI, bo autoinkrement nie zbuduje Ci ciągu w takiej postaci.
Czyli typ CHAR lub VARCHAR w zależności czy długość ciągu jest stała. A dodatkowo indeks unikalny.


--------------------
Go to the top of the page
+Quote Post
Tomplus
post 17.09.2019, 12:53:22
Post #3





Grupa: Zarejestrowani
Postów: 1 489
Pomógł: 178
Dołączył: 20.03.2005
Skąd: Będzin

Ostrzeżenie: (0%)
-----


Możesz nam powiedzieć jaki typ jest teraz?
Autoincrement używa się do typów INT a nie stringów.
jeżelu chcesz sekwencję to ustaw sobie dwie kolumny gdzie jedna to ID z AI, a druga string podczas zapytania użyj CONCAT(`id`, '-', `drugaInformacja`)
Go to the top of the page
+Quote Post
Zenobiusz
post 18.09.2019, 09:24:16
Post #4





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 17.05.2019

Ostrzeżenie: (0%)
-----


CHAR i VARCHAR przyjmuje ale niestety nie zapisuje liter. Nadal przyjmuje tylko liczby.
AT oczywiście odhaczone.
Go to the top of the page
+Quote Post
trueblue
post 18.09.2019, 09:30:27
Post #5





Grupa: Zarejestrowani
Postów: 5 521
Pomógł: 1505
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


A jaką długość pola ustawiłeś w przypadku CHAR/VARCHAR?


--------------------
Go to the top of the page
+Quote Post
Zenobiusz
post 18.09.2019, 10:00:36
Post #6





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 17.05.2019

Ostrzeżenie: (0%)
-----


Robiłem na 12 i 250. Bez skutku. Wpisuje np do pola AAAA to zapisuje mi to jako 0.

Ten post edytował Zenobiusz 18.09.2019, 10:01:07
Go to the top of the page
+Quote Post
trueblue
post 18.09.2019, 10:43:31
Post #7





Grupa: Zarejestrowani
Postów: 5 521
Pomógł: 1505
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Pokaż wynik z:
SHOW CREATE TABLE tu_nazwa_tabeli;
albo:
DESC tu_nazwa_tabeli;

Wartość wprowadzasz bezpośrednio do bazy czy poprzez jakiś skrypt/formularz?


--------------------
Go to the top of the page
+Quote Post
viking
post 18.09.2019, 11:21:48
Post #8





Grupa: Zarejestrowani
Postów: 5 372
Pomógł: 910
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Wyraźnie widać że jest gdzieś rzutowanie na int.


--------------------
Go to the top of the page
+Quote Post
Zenobiusz
post 18.09.2019, 11:39:53
Post #9





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 17.05.2019

Ostrzeżenie: (0%)
-----


Wprowadzam przez skrypt ale przez baze czyli bezpośrednio wychodzi tak samo.
Go to the top of the page
+Quote Post
trueblue
post 18.09.2019, 11:41:14
Post #10





Grupa: Zarejestrowani
Postów: 5 521
Pomógł: 1505
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


A byłbyś jednak uprzejmy pokazać wyniki tych dwóch zapytań z mojego posta wyżej?


--------------------
Go to the top of the page
+Quote Post
Zenobiusz
post 18.09.2019, 12:06:09
Post #11





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 17.05.2019

Ostrzeżenie: (0%)
-----


Przepraszam. Jednak z bazy danych jest poprawnie problem leży na skrypcie. PRzez skrypt do bazy danych przechodzi przez 0 natomiast przez baze danych wpisuje się poprawnie. Wiec teraz jaki mam wkleić problem ?
Go to the top of the page
+Quote Post
trueblue
post 18.09.2019, 12:11:07
Post #12





Grupa: Zarejestrowani
Postów: 5 521
Pomógł: 1505
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Sprawdź po kolei przez jakie miejsca w kodzie przechodzi zmienna (do momentu INSERT), która przechowuje tą wartość.


--------------------
Go to the top of the page
+Quote Post
Zenobiusz
post 18.09.2019, 12:12:54
Post #13





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 17.05.2019

Ostrzeżenie: (0%)
-----


Viking miałeś racje. Problem leżał na int a dokładnie w skrypcie. Poprawiłem już i wszystko działa. Dziękuje wszystkim za zaangażowanie i dla każdego polecą dziękówki. Pozdrawiam.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 22.10.2019 - 17:50