Chirurgia spinală minim invazivă
Chirurgia spinală minim invazivă oferă pacienților oportunitatea unui tratament eficient, permițându-le o recuperare ultra rapidă și nu în ultimul rând minimizând leziunile induse chirurgical. Echipa noastră utilizează un spectru larg de tehnici minim invazive, din care enumerăm câteva: endoscopia cu variantele ei (transnazală, transtoracică, transmusculară, etc), microscopul operator, abordurile trans tubulare și nu în ultimul rând infiltrațiile la toate nivelurile coloanei vertebrale. www.neurohope.ro |
numar limitat de randuri la importul de csv in MySql
Last Updated: Jun 06 2017 11:17, Started by
ursudepadure
, Jun 04 2017 12:54
·
0
#1
Posted 04 June 2017 - 12:54
Lucrez la un transcriptor fonetic danez-roman si vreau sa import un fisier csv in MySql. Mi-a fost mai usor sa fac prelucrarile de care aveam nevoie pentru a scrie fonetic fiecare cuvant in notepad++.
Am facut acelasi proiect in C# folosind un vector in care se incarca un fisier text cu cuvintele de transcris fonetic si altul cu ele transcrise. In total cam 12000 desi o sa ajung la un numar mult ma mare. Incerc acum sa fac acelasi lucru cu o baza de date MySQL si pentru asta incerc sa import un fisier csv. Aplicatia la care lucrez va fi web-based si o fac in PHP. Mentionez ca in C# (windows app) cu fisier text merge perfect dar o baza de date mi-ar fi mai de folos din anumite motive. Totul merge perfect cu MySql mai putin faptul ca nu se importa decat primele exact 757 randuri, restul de mai mult de 10 000 de care am nevoie raman pe dinafara. Reusita aplicatiei se bazeaza pe faptul ca am cat mai multe cuvinte transcrise fonetic in baza de date desi vor fi aplicate anumite corectii prin functii care vor determina sufixe sau prefixe, etc...Voi incerca sa abordez si problema cuvintelor care nu sunt in baza de date si sa nu le lase netranscriptate, dar asta e alta poveste. Pentru aplicatia mea am nevoie de cat mai multe linii. E interesant ca un vector poate avea sute de mii de elemente, pana la 2 GB in C#. O baza de date poate avea de asemenea sute de mii de inregistrari. In C# cele peste 22 000 de cuvinte (din doua fisiere text se incarca instantaneu). Cum as putea face sa imi importe mai mult decat 757 de linii? Nu am avut treaba cu codificarea, unde aveam emotii dar am dat de aceasta problema. Exista pe undeva o configuarare care limiteaza numarul maxim de inregistrari? Acum caut inca pe net dar nu am gasit nimic despre asta. |
#2
Posted 04 June 2017 - 13:01
cu siguranta MySQL-ul poate importa mult mai multe inregistrari. cel mai probabil e o problema la randul 758 care opreste importul.
incearca sa stergi randul 758 si sa importi noul fisier. o alta solutie (daca tot spui ca ai lucrat si in c#) e sa citesti fisierele in c# si sa inserezi datele de acolo in MySQL |
#3
Posted 04 June 2017 - 13:18
ursudepadure, on 04 iunie 2017 - 12:54, said:
Lucrez la un transcriptor fonetic danez-roman si vreau sa import un fisier csv in MySql. Mi-a fost mai usor sa fac prelucrarile de care aveam nevoie pentru a scrie fonetic fiecare cuvant in notepad++. Am facut acelasi proiect in C# folosind un vector in care se incarca un fisier text cu cuvintele de transcris fonetic si altul cu ele transcrise. In total cam 12000 desi o sa ajung la un numar mult ma mare. Incerc acum sa fac acelasi lucru cu o baza de date MySQL si pentru asta incerc sa import un fisier csv. Aplicatia la care lucrez va fi web-based si o fac in PHP. Mentionez ca in C# (windows app) cu fisier text merge perfect dar o baza de date mi-ar fi mai de folos din anumite motive. Totul merge perfect cu MySql mai putin faptul ca nu se importa decat primele exact 757 randuri, restul de mai mult de 10 000 de care am nevoie raman pe dinafara. Reusita aplicatiei se bazeaza pe faptul ca am cat mai multe cuvinte transcrise fonetic in baza de date desi vor fi aplicate anumite corectii prin functii care vor determina sufixe sau prefixe, etc...Voi incerca sa abordez si problema cuvintelor care nu sunt in baza de date si sa nu le lase netranscriptate, dar asta e alta poveste. Pentru aplicatia mea am nevoie de cat mai multe linii. E interesant ca un vector poate avea sute de mii de elemente, pana la 2 GB in C#. O baza de date poate avea de asemenea sute de mii de inregistrari. In C# cele peste 22 000 de cuvinte (din doua fisiere text se incarca instantaneu). Cum as putea face sa imi importe mai mult decat 757 de linii? Nu am avut treaba cu codificarea, unde aveam emotii dar am dat de aceasta problema. Exista pe undeva o configuarare care limiteaza numarul maxim de inregistrari? Acum caut inca pe net dar nu am gasit nimic despre asta. |
#4
Posted 04 June 2017 - 14:38
Cel mai rapid poti sa incarci datele cu mysql workbench. Deschizi o fereastra sql si dai urmatorea comanda:
load data local infile 'f:/\myfolder/\myfile.csv' INTO TABLE `MYTABLE` CHARACTER SET 'utf8' FIELDS TERMINATED BY '\t' ENCLOSED BY '"' LINES TERMINATED BY '\r\n' IGNORE 1 LINES Verfică cu Notepad++ ca fisierul este encodat in utf8. |
#5
Posted 04 June 2017 - 15:59
Cand fac importul, se autogenereaza gresit comenzi sql...ciudat. O sa incerc si asa.
|
#7
Posted 04 June 2017 - 16:53
Cred ca este implementat un mecanism ca atunci cand faci importul prin clickuri de mouse sa se autogenereze codul mysql, care ar face acelasi lucru.
|
#8
Posted 04 June 2017 - 16:58
Importul masiv de date nu se face nici din mouse, nici scriind/generand SQL. De exemplu, MySQL te lasa sa-i spui din ce csv sa importe datele pentru a face cat mai rapid treaba: https://dev.mysql.co.../load-data.html
|
#9
Posted 04 June 2017 - 18:19
In cazul meu nu sunt chiar multe date, doar ca sunt multe inregistrari. Numai trei coloane si mii de randuri. Si puteam bine-merci folosi fisiere text, atat era de simplu in principiu. Dar din anumite motive am nevoie de baza de date pentru a rezolva problema asta.
Am facut mai intai alt fisier de test si merge. Dar unul de care sa fiu sigur ca nu are erori. Se pare ca ceva strica toata sandramaua in fisierul meu xlm. Acum se importa doar din clickuri de mouse fara mare bataie de cap. Ca sa gasesc eroarea am facut un fisier xlm, acolo orice iesire din patern sare in ochi. Ideea este ca merge |
#10
Posted 04 June 2017 - 21:17
Am pierdut firul. De la CSV si MySQL s-a ajuns la xlm (poate xml?), discutii despre PHP amestecate cu clickuri de mouse.
|
|
#11
Posted 05 June 2017 - 08:33
Ok Dani, o sa fiu mai clar. Se pare ca tu stai la panda sa vanezi fiecare greseala si asta e de apreciat pentru a nu se creea confuzii.
Lucrez cu WAMP si daca "DAI CLICK" pe phpMyAdmin -- > yourDataBase -- > yourTable -- > Import -- > combobox setat pe csv si alte combobox, butoane radio, etc setate pe utf-8 si ce mai ´consideri, atunci NU mai e nevoie sa scrii comenzi SQL. Asta am vrut sa zic prin "clickuri de mouse". Pana la urma si Visual Studio si alte medii de dezvoltare sunt facute sa te scuteasca sa scrii cod prea mult cand folosesti instrumente din toolbox si faci asta prin "drag and drop", deci prin "clickuri de mouse". Csv este un fisier text pe care poti sa il convertesti in xml cu o gramada de "toolsuri" online . Am facut asta in speranta ca se va importa mai bine decat csv dar si pentru ca, daca este o greseala o poti vedea mai usor "la ochi". Asta pentru ca tagurile inlocuiesc virgulele si se vede imediat daca undeva au fost doua virgule una dupa alta sau inca un cuvant scris in plus care strica "paternul". Imi cer scuze ca am zis xlm in loc de xml. Este pentru ca am lucrat cu excel si VBA pana am pregatit tabelul si mi-a luat-o mana inaintea capului si am combinat cele doua extensii. De fapt exista si xlm pentru Excel 4.0 Macro file. |
#12
Posted 05 June 2017 - 17:43
Poti sa furnizezi header-ul si primul rand din acel csv pe care incerci sa-l importi in mysql?
Baza de date pe care ai creat-o si tabelul sunt ca utf_8? Importul unui csv se face foarte simplu folosind un script de php cu conectare la baza de date. |
#13
Posted 06 June 2017 - 11:17
Daca import prin metoda pe care am folosit-o ma intreaba daca vreau ca primul rand sa fie preluat pentru a denumi fiecare coloana. Daca nu validez aceasta optiune imi da numele coloanelor COL 1, COL 2, etc...
Era simplu sa fac un script php care sa imi citeasca din fisierul text (sau puteam folosi cate un fisier text pentru fiecare coloana, pentru ca deja le aveam in acest format pentru prelucrari si inlocuiri). Pentru un tabel cu foarte multe coloeane care era preluat din Excel salvat ca si csv, sa scriu un script ar fi durat un pic mai mult decat prin facilitaea pe care o ofera phpMyAdmin privind importul din csv sau xml. Despre asta am gasit multe exemple, cum este cel de aici: https://stackoverflo...-mysql-database Oricum, am rezolvat problema. Erau doar niste greseli in fisierul csv. Aplicatia e aproape gata, totul e ok. |
Anunturi
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users