Skocz do zawartości

Wstawienie danych do tabeli


Dominik23

Rekomendowane odpowiedzi

Witam. Mam do Was prośbę żebyście lukneli na kod sql.

Zrobiłem bazę mysql z bazy exela xls a pontem na csv. Znalazłem skrypt konwersji jest tutaj

https://miodzio.net/csv2sql.php

Baza ma ponad 62000 rekordów, ale mi zależy. Pierwsze 241 zapytań do wstawienia do bazy poszło, reszta rekordów nie chce.

Pomście mi wyczaić błąd bo wszystkie włosy sobie powyrywam z nerwów. Pewnie chodzi o jakieś ustrojstwo w formie przecinka lub kropki.

Więc tak, struktura tabeli:

CREATE TABLE `firm` (
 `ID` int(6) NOT NULL auto_increment,
 `nazaw1` varchar(50) collate utf8_polish_ci NOT NULL,
 `nazwa2` varchar(50) collate utf8_polish_ci default NULL,
 `kod` varchar(6) collate utf8_polish_ci default NULL,
 `miasto` varchar(50) collate utf8_polish_ci default NULL,
 `skrytkaul` varchar(40) collate utf8_polish_ci default NULL,
 `powiat` varchar(20) collate utf8_polish_ci default NULL,
 `bylewoj` varchar(20) collate utf8_polish_ci default NULL,
 `woj` varchar(20) collate utf8_polish_ci default NULL,
 `tel` varchar(50) collate utf8_polish_ci default NULL,
 `fax` varchar(50) collate utf8_polish_ci default NULL,
 `telfax` varchar(50) collate utf8_polish_ci default NULL,
 `homep` varchar(80) collate utf8_polish_ci default NULL,
 `mail` varchar(50) collate utf8_polish_ci default NULL,
 `forpraw` varchar(70) collate utf8_polish_ci default NULL,
 `forwla` varchar(40) collate utf8_polish_ci default NULL,
 `nip` bigint(10) default NULL,
 `rokzal` int(4) default NULL,
 `wyr1` varchar(3) collate utf8_polish_ci default NULL,
 `pozostale` int(20) default NULL,
 `bank` varchar(50) collate utf8_polish_ci default NULL,
 `nrbank` varchar(20) collate utf8_polish_ci default NULL,
 `stglmen` varchar(20) collate utf8_polish_ci default NULL,
 `glmen` varchar(30) collate utf8_polish_ci default NULL,
 `finansest` varchar(20) collate utf8_polish_ci default NULL,
 `mendsfin` varchar(30) collate utf8_polish_ci default NULL,
 `technikast` varchar(20) collate utf8_polish_ci default NULL,
 `mendstech` varchar(30) collate utf8_polish_ci default NULL,
 `sprzedazst` varchar(20) collate utf8_polish_ci default NULL,
 `ostzatrudnienie` varchar(10) collate utf8_polish_ci default NULL,
 `ostobrut` varchar(10) collate utf8_polish_ci default NULL,
 `kapital` varchar(10) collate utf8_polish_ci default NULL,
 `nieruchwm2` varchar(10) collate utf8_polish_ci default NULL,
 `ilostarob` varchar(3) collate utf8_polish_ci default NULL,
 `komputery` varchar(40) collate utf8_polish_ci default NULL,
 `import` varchar(100) collate utf8_polish_ci default NULL,
 `eksport` varchar(100) collate utf8_polish_ci default NULL,
 `mendsjak` varchar(20) collate utf8_polish_ci default NULL,
 `jakoscst` varchar(20) collate utf8_polish_ci default NULL,
 `mendspro` varchar(20) collate utf8_polish_ci default NULL,
 `produkcjast` varchar(20) collate utf8_polish_ci default NULL,
 `mendsinfo` varchar(25) collate utf8_polish_ci default NULL,
 `informatykast` varchar(30) collate utf8_polish_ci default NULL,
 `mendszaop` varchar(30) collate utf8_polish_ci default NULL,
 `zaopatrzeniest` varchar(30) collate utf8_polish_ci default NULL,
 `mendsbadroz` varchar(30) collate utf8_polish_ci default NULL,
 `badaniast` varchar(30) collate utf8_polish_ci default NULL,
 `mendskadrszkol` varchar(30) collate utf8_polish_ci default NULL,
 `kadryst` varchar(30) collate utf8_polish_ci default NULL,
 `mendsmark` varchar(30) collate utf8_polish_ci default NULL,
 `marketingst` varchar(30) collate utf8_polish_ci default NULL,
 `mendspromrekl` varchar(30) collate utf8_polish_ci default NULL,
 `prorekst` varchar(30) collate utf8_polish_ci default NULL,
 `mendssprz` varchar(30) collate utf8_polish_ci default NULL,
 KEY `ID` (`ID`)
);

Chrzanie optymalizacje, byle ruszyło :/

Teraz skrawek kodu z csv od wiersza 242 ktury wsawiłem do https://miodzio.net/csv2sql.php

ID;nazaw1;nazwa2;kod;miasto;skrytkaul;powiat;bylewoj;woj;tel;fax;telfax;homep;ma
il;forpraw;forwla;nip;rokzal;wyr1;pozostale;bank;nrbank;stglmen;glmen;finansest;m
endsfin;technikast;mendstech;sprzedazst;ostzatrudnienie;ostobrut;kapital;nieruchw
m2;ilostarob;komputery;import;eksport;mendsjak;jakoscst;mendspro;produkcjast;mend
sinfo;informatykast;mendszaop;zaopatrzeniest;mendsbadroz;badaniast;mendskadrszkol
;kadryst;mendsmark;marketingst;mendspromrekl;prorekst;mendssprz
242;ABC SERWIS Wiesław Tasarz;;50-347;WROCŁAW;ul. Sienkiewicza 116/9;m. Wrocław;wrocławskie;dolnośląskie;(71) 328 38 08|601 702 406;;;;;Przedsiębiorstwo prywatne;Własność prywatna;;;28;;;;Zarząd;Pan Wiesław Tasarz;;;;;;1;0,00;0;;;;;;;;;;;;;;;;;;;
243;ABC SILIKON;;03-994;WARSZAWA;ul. Wał Miedzeszyński 379;warszawski;warszawskie;mazowieckie;(22) 616 19 45;(22) 617 76 65;;;mailto:justyna@warszawa.home.pl;Przedsiębiorstwo prywatne;Własność prywatna;1130544609;;25;295610;;;Prezes;Pan Wojciech Szymski;;;;;;10;0,00;0;;;;;;;;;;;;;;;;;;;

i wyszedł mi taki sql:

INSERT INTO firm (`ID`, `nazaw1`, `nazwa2`, `kod`, `miasto`, `skrytkaul`, `powiat`, `bylewoj`, `woj`, `tel`, `fax`, `telfax`, `homep`, `mail`, `forpraw`, `forwla`, `nip`, `rokzal`, `wyr1`, `pozostale`, `bank`, `nrbank`, `stglmen`, `glmen`, `finansest`, `mendsfin`, `technikast`, `mendstech`, `sprzedazst`, `ostzatrudnienie`, `ostobrut`, `kapital`, `nieruchwm2`, `ilostarob`, `komputery`, `import`, `eksport`, `mendsjak`, `jakoscst`, `mendspro`, `produkcjast`, `mendsinfo`, `informatykast`, `mendszaop`, `zaopatrzeniest`, `mendsbadroz`, `badaniast`, `mendskadrszkol`, `kadryst`, `mendsmark`, `marketingst`, `mendspromrekl`, `prorekst`, `mendssprz`) VALUES ('242', 'ABC SERWIS Wiesław Tasarz', '', '50-347', 'WROCŁAW', 'ul. Sienkiewicza 116/9', 'm. Wrocław', 'wrocławskie', 'dolnośląskie', '(71) 328 38 08|601 702 406', '', '', '', '', 'Przedsiębiorstwo prywatne', 'Własność prywatna', '', '', '28', '', '', '', 'Zarząd', 'Pan Wiesław Tasarz', '', '', '', '', '', '1', '0,00', '0', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''); 
INSERT INTO firm (`ID`, `nazaw1`, `nazwa2`, `kod`, `miasto`, `skrytkaul`, `powiat`, `bylewoj`, `woj`, `tel`, `fax`, `telfax`, `homep`, `mail`, `forpraw`, `forwla`, `nip`, `rokzal`, `wyr1`, `pozostale`, `bank`, `nrbank`, `stglmen`, `glmen`, `finansest`, `mendsfin`, `technikast`, `mendstech`, `sprzedazst`, `ostzatrudnienie`, `ostobrut`, `kapital`, `nieruchwm2`, `ilostarob`, `komputery`, `import`, `eksport`, `mendsjak`, `jakoscst`, `mendspro`, `produkcjast`, `mendsinfo`, `informatykast`, `mendszaop`, `zaopatrzeniest`, `mendsbadroz`, `badaniast`, `mendskadrszkol`, `kadryst`, `mendsmark`, `marketingst`, `mendspromrekl`, `prorekst`, `mendssprz`) VALUES ('243', 'ABC SILIKON', '', '03-994', 'WARSZAWA', 'ul. Wał Miedzeszyński 379', 'warszawski', 'warszawskie', 'mazowieckie', '(22) 616 19 45', '(22) 617 76 65', '', '', 'mailto:justyna@warszawa.home.pl', 'Przedsiębiorstwo prywatne', 'Własność prywatna', '1130544609', '', '25', '295610', '', '', 'Prezes', 'Pan Wojciech Szymski', '', '', '', '', '', '10', '0,00', '0', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '');

Wstawiam do phpmyadmin i wyszło:

Błąd

zapytanie SQL:

INSERT INTO firm( `ID` , `nazaw1` , `nazwa2` , `kod` , `miasto` , `skrytkaul` , `powiat` , `bylewoj` , `woj` , `tel` , `fax` , `telfax` , `homep` , `mail` , `forpraw` , `forwla` , `nip` , `rokzal` , `wyr1` , `pozostale` , `bank` , `nrbank` , `stglmen` , `glmen` , `finansest` , `mendsfin` , `technikast` , `mendstech` , `sprzedazst` , `ostzatrudnienie` , `ostobrut` , `kapital` , `nieruchwm2` , `ilostarob` , `komputery` , `import` , `eksport` , `mendsjak` , `jakoscst` , `mendspro` , `produkcjast` , `mendsinfo` , `informatykast` , `mendszaop` , `zaopatrzeniest` , `mendsbadroz` , `badaniast` , `mendskadrszkol` , `kadryst` , `mendsmark` , `marketingst` , `mendspromrekl` , `prorekst` , `mendssprz` )

VALUES (

'242', 'ABC SERWIS Wiesław Tasarz', '', '50-347', 'WROCŁAW', 'ul. Sienkiewicza 116/9', 'm. Wrocław', 'wrocławskie', 'dolnośląskie', '(71) 328 38 08|601 702 406', '', '', '', '', 'Przedsiębiorstwo prywatne', 'Własność prywatna', '', '', '28', '', '', '', 'Zarząd', 'Pan Wiesław Tasarz', '', '', '', '', '', '1', '0,00', '0', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''

);

MySQL zwrócił komunikat:

#1136 - Column count doesn't match value count at row 1

Dacie rade ??

Witryna Biznesu - najlepsza promocja biznesu w sieci.

Odnośnik do komentarza
Udostępnij na innych stronach

Nie używać pseudo narzędzi tylko mysql.exe -f i będzie działać :(

Pseudo narzedzia praktycznie nie sprawdzają danych wejściowych ,

Wiem: Nie można oczekiwać od gąski orlich piór i głosu słowika

Jeżeli możesz sobie pozwolić na utrate paru procent rekordów to nie wnikasz i pomijasz te wiersze

I tak jak napisałem

mysql -f <plik.sql

lub

mysql --force <plik.sql

Masz szczeście że dopiero teraz to zauważyłem ,

napisać KTÓRY przez U wstydź się

Odnośnik do komentarza
Udostępnij na innych stronach

Postawilem localhosta na krasnalu i z prawami roota przeszło.

Dziękuje za pomoc.

Co do mojej dysortografii, no cóż.. błąd zauwazyłem od razu po publikacji topika, ale nie chcialo mi się go poprawiać :)

Taka zemnie GYŃŚ ;)

Witryna Biznesu - najlepsza promocja biznesu w sieci.

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

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

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności