Salutare tuturor,
Sper ca am ajuns la forumul potrivit pentru problema mea.
Mi-este foarte clar cum pot importa intr-o tabela din MySQL niste date dintr-un fisier sql, txt sau CSV cu ajutorul PHPMyAdmin-ului... dar problema este: cum as putea distribui aceste inregistrari in diferite categorii?
Concret: am instalat OSCommerce Max si am vre-o 1000 de produse de importat. In tabela "produse" din MySQL acestea sunt afisate "la gramada" iar descrierea acestora intr-un mod similar, in tabela "descrierea_produselor".
Cum as putea "aduce" aceste inregistrari/produse in baza mea de date distribuindu-le in categoriile aferente fara sa fiu nevoit sa le introduc una cate una din admin-ul OSCommerce-ului???
Sunt convins ca exista o solutie care sa-mi inlesneasca munca, dar oare care-ar putea fi? Puteti sa ma ajutati, va rog?
Va multumesc in avans.
Cele bune,
Remus.
PHPMyAdmin - import in MySQL
Moderator: Moderatori
- dducu
- PHPRomania Supporter
- Mesaje: 16
- Membru din: Mie Noi 17, 2004 10:55 am
- Localitate: Iasi
- Contact:
import in MySQL
Nu prea am inteles clar ce ai explicat, dar sa iti dau eu o posibila printr-un exemplu:
Sa presupunem ca ai inregistrarile intr-un fisier text pe c:\ (pet.txt de ex.) ca mai jos
Fluffy Harold cat f 1993-02-04
Claws Gwen cat m 1994-03-17
Bowser Diane dog m 1989-08-31 1995-07-29
(fiecare inregistrare pe randul ei, iar valorile de la fiecare inregistrare separate prin tab)
Acum creezi o tabela (tot pet de ex.) in felul urmator:
mysql> CREATE TABLE pet (name VARCHAR(20), owner VARCHAR(20),
-> species VARCHAR(20), * CHAR(1), birth DATE, death DATE);
Iar acum introduci toate inregistrarile pe care le ai in fisierul text in tabela ca mai jos (asta am inteles ca vrei de fapt):
mysql> LOAD DATA LOCAL INFILE "c:\pet.txt" INTO TABLE pet;
Iar acum cu "mysql>SELECT * FROM pet;" poti verifica ca intra-devar toate inregistrarile au fost aduse in tabela pet.
Voie buna!
Sa presupunem ca ai inregistrarile intr-un fisier text pe c:\ (pet.txt de ex.) ca mai jos
Fluffy Harold cat f 1993-02-04
Claws Gwen cat m 1994-03-17
Bowser Diane dog m 1989-08-31 1995-07-29
(fiecare inregistrare pe randul ei, iar valorile de la fiecare inregistrare separate prin tab)
Acum creezi o tabela (tot pet de ex.) in felul urmator:
mysql> CREATE TABLE pet (name VARCHAR(20), owner VARCHAR(20),
-> species VARCHAR(20), * CHAR(1), birth DATE, death DATE);
Iar acum introduci toate inregistrarile pe care le ai in fisierul text in tabela ca mai jos (asta am inteles ca vrei de fapt):
mysql> LOAD DATA LOCAL INFILE "c:\pet.txt" INTO TABLE pet;
Iar acum cu "mysql>SELECT * FROM pet;" poti verifica ca intra-devar toate inregistrarile au fost aduse in tabela pet.
Voie buna!
Before doing something perfect, do something perfectible!
nu asta vroia omu`. Da noa in fine.
Ideea e ca fiecare produs face parte dintr-o categorie.
Este o tabela in os products_to_categories, care contine products_id si categories_id.
Asa ca ai nevoie de categories_id cand importi. Uita-te la baza de date si o sa-ti dai seama....Dar daca n-ai categories_id atunci esti in trouble man.
Calcula n-are de unde sa stie in ce categorie vrei tu sa fie un produs.
Ideea e ca fiecare produs face parte dintr-o categorie.
Este o tabela in os products_to_categories, care contine products_id si categories_id.
Asa ca ai nevoie de categories_id cand importi. Uita-te la baza de date si o sa-ti dai seama....Dar daca n-ai categories_id atunci esti in trouble man.
Calcula n-are de unde sa stie in ce categorie vrei tu sa fie un produs.
-
rem
- Average Member
- Mesaje: 62
- Membru din: Mie Noi 10, 2004 11:50 am
- Localitate: Cluj-Napoca
- Contact:
aha, aha, aha
Thanks beeuser, cam asta era baiu' Si fii atent: am products_to_categories cu doua shmecherii:
products_id
categories_id
Deci m-am mai linistit nitzel... am tot ce-mi trebe, dar acu' ce sa fac cu astea?
Ii dau un export la products_to_categories si apoi ma uit la codul ala (care arata de parca o umblat gaina pe-acolo). Si daca ma simt in forma completez cu celelalte produse pe care le am si mi le va distribui in categoriile de rigoare?
Daca da, norocu' meu!
Multam fain,
Cele bune.
products_id
categories_id
Deci m-am mai linistit nitzel... am tot ce-mi trebe, dar acu' ce sa fac cu astea?
Ii dau un export la products_to_categories si apoi ma uit la codul ala (care arata de parca o umblat gaina pe-acolo). Si daca ma simt in forma completez cu celelalte produse pe care le am si mi le va distribui in categoriile de rigoare?
Daca da, norocu' meu!
Multam fain,
Cele bune.
-
rem
- Average Member
- Mesaje: 62
- Membru din: Mie Noi 10, 2004 11:50 am
- Localitate: Cluj-Napoca
- Contact:
Uite:
Continutul tabelei products_to_categories:
--
-- Table structure for table `products_to_categories`
--
CREATE TABLE `products_to_categories` (
`products_id` int(11) NOT NULL default '0',
`categories_id` int(11) NOT NULL default '0',
PRIMARY KEY (`products_id`,`categories_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Dumping data for table `products_to_categories`
--
INSERT INTO `products_to_categories` VALUES (5, 6);
INSERT INTO `products_to_categories` VALUES (7, 6);
INSERT INTO `products_to_categories` VALUES (8, 6);
INSERT INTO `products_to_categories` VALUES (9, 5);
Deocamdata, am niste produse aiurea, pentru test, dar cum pot sa-i spun eu PHPMyAdmin-ului sa-mi distribuie produsele de care am nevoie in categorii tinand cont de categories_id sau products_id?
--
-- Table structure for table `products_to_categories`
--
CREATE TABLE `products_to_categories` (
`products_id` int(11) NOT NULL default '0',
`categories_id` int(11) NOT NULL default '0',
PRIMARY KEY (`products_id`,`categories_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Dumping data for table `products_to_categories`
--
INSERT INTO `products_to_categories` VALUES (5, 6);
INSERT INTO `products_to_categories` VALUES (7, 6);
INSERT INTO `products_to_categories` VALUES (8, 6);
INSERT INTO `products_to_categories` VALUES (9, 5);
Deocamdata, am niste produse aiurea, pentru test, dar cum pot sa-i spun eu PHPMyAdmin-ului sa-mi distribuie produsele de care am nevoie in categorii tinand cont de categories_id sau products_id?
So....
Daca ai id-ul produsului si id-ul categoriei n-ar trebui sa ai probleme.
In primu rand tre sa iti faci niste categorii.
Daca in fisierul text nu ai specificat fiecarui produs, o categorie atunci e nasol, pt. ca n-ai cum sa asignezi automat produs->categorie.
Nu stiu unde nu intelegi....
Eu tind sa cred ca tu n-ai si categoria din care face parte...
da o bucata de fisierul de import sa vad.
Daca ai id-ul produsului si id-ul categoriei n-ar trebui sa ai probleme.
In primu rand tre sa iti faci niste categorii.
Daca in fisierul text nu ai specificat fiecarui produs, o categorie atunci e nasol, pt. ca n-ai cum sa asignezi automat produs->categorie.
Nu stiu unde nu intelegi....
Eu tind sa cred ca tu n-ai si categoria din care face parte...
da o bucata de fisierul de import sa vad.
Mai io nu inteleg ce tot zici acolo.
Ce ti-am cerut eu, si ce mi-ai dat tu...
Tu ai zis ca vrei sa importi dintr-un fisier .csv produse. Eu ti-am zis sa-mi dai cateva linii din fisierul csv, sa vad cum e structurat.
Legatura din produs->categorie in os e facuta de tabela products_to_categories. N-ai nici treaba cu tabela products. comprendre?
Daca in fisierul csv, din care vrei sa importi nu ai categoria pt. fiecare produs, atunci n-ai cum sa asignezi automat produs->categorie. Tre sa faci manual.
Da-mi numa cateva linii din csv
Ce ti-am cerut eu, si ce mi-ai dat tu...
Tu ai zis ca vrei sa importi dintr-un fisier .csv produse. Eu ti-am zis sa-mi dai cateva linii din fisierul csv, sa vad cum e structurat.
Legatura din produs->categorie in os e facuta de tabela products_to_categories. N-ai nici treaba cu tabela products. comprendre?
Daca in fisierul csv, din care vrei sa importi nu ai categoria pt. fiecare produs, atunci n-ai cum sa asignezi automat produs->categorie. Tre sa faci manual.
Da-mi numa cateva linii din csv
-
rem
- Average Member
- Mesaje: 62
- Membru din: Mie Noi 10, 2004 11:50 am
- Localitate: Cluj-Napoca
- Contact:
Aha..
Pai daca export un csv din tabela products_to_categories ii si mai mare beleaua...
Cam asa arata:
7;"6"
8;"6"
9;"6"
(eu am crezut ca aici trebuie sa fac modificarile pentru a adauga produse)
CSV-ul tabelei produse:
"7";"0";;NULL;"20.0000";"2004-11-19 19:24:38";NULL;NULL;"0.00";"1";"0";"0";"0";"5.0000"
"8";"0";;NULL;"20.0000";"2004-11-19 19:22:21";NULL;NULL;"0.00";"1";"0";"0";"0";"5.0000"
"9";"0";;NULL;"20.0000";"2004-11-21 00:19:49";NULL;"2004-11-22 00:00:00";"0.00";"1";"0";"0";"0";"5.0000"
Cam asa arata:
7;"6"
8;"6"
9;"6"
(eu am crezut ca aici trebuie sa fac modificarile pentru a adauga produse)
CSV-ul tabelei produse:
"7";"0";;NULL;"20.0000";"2004-11-19 19:24:38";NULL;NULL;"0.00";"1";"0";"0";"0";"5.0000"
"8";"0";;NULL;"20.0000";"2004-11-19 19:22:21";NULL;NULL;"0.00";"1";"0";"0";"0";"5.0000"
"9";"0";;NULL;"20.0000";"2004-11-21 00:19:49";NULL;"2004-11-22 00:00:00";"0.00";"1";"0";"0";"0";"5.0000"
-
rem
- Average Member
- Mesaje: 62
- Membru din: Mie Noi 10, 2004 11:50 am
- Localitate: Cluj-Napoca
- Contact:
Nuuuuuuuu...
Uite care-i baiu':
Intr-adevar vreau sa import... Dar crede-ma ca habar n-am cum naiba sa fac chestia asta.
De aceea, am exportat din tabelele products si products_to_categories fisiere csv si sql sa le vad structura. De asta ma tot elucubrez cu exportu' asta...
Eu m-am gandit ca daca modific structura initiala a fisierului csv exportat, respectand acelasi sablon, ex:
"7";"0";;NULL;"20.0000";"2004-11-19 19:24:38";NULL;NULL;"0.00";"1";"0";"0";"0";"5.0000" - structura intiala a unui rand din tabela (ii dau ctrl+c si api ctrl+v de cate ori am nevoie, in fisierul meu)
si apoi schimb fiecare rand in parte:
"8";"0";;NULL;"20.0000";'etc...
si apoi "9"; "0";;NULL; "20.0000";, "etc... si
"10"; "0";;NULL; "20.0000";, "etc... ,
"11"; "0";;NULL; "20.0000";, "etc...
as putea popula baza de date mai usor. Practic eu asa avea de modificat doar numarul si descrierea acestora, din moment ce toate produsele sunt la acelasi pret, fabricant, marime, greutate...
Eu m-am gandit ca as putea da copy la un rand din tabela si apoi paste de cate ori am nevoie si apoi as putea sa-l modific intr-un fisier txt sau csv...si sa-l pun la loc cu toate dihaniile insirate acolo.
Dar de unde sa scot eu structura tabelului decat daca o export din PHPMyAdmin?
Altfel? Eu am intr-un fisier .doc toate produsele cu descrierea lor insirate... E clar ca nu pot baga doc-ul in baza de date, nu? Tre' sa-i dau o forma anume, specifica csv-ului sa-mi permita inserarea produselor in baza de date. Nu am un csv cu produsele, gata aranjat!
Se poate face asta daca respect sablonul csv-ului exportat din produse, dar nici pana la Craciunu' viitor nu-mi pune pe categorii, asa cum trebuie !
Beeuser, te rog sa ma scuzi daca sunt prea insistent. Nu vreau lucrul acesta.
Inteleg daca nu vrei sa-ti mai bati capul cu mine...
Cele bune si multumesc pentru timp.
Remus.
Intr-adevar vreau sa import... Dar crede-ma ca habar n-am cum naiba sa fac chestia asta.
De aceea, am exportat din tabelele products si products_to_categories fisiere csv si sql sa le vad structura. De asta ma tot elucubrez cu exportu' asta...
Eu m-am gandit ca daca modific structura initiala a fisierului csv exportat, respectand acelasi sablon, ex:
"7";"0";;NULL;"20.0000";"2004-11-19 19:24:38";NULL;NULL;"0.00";"1";"0";"0";"0";"5.0000" - structura intiala a unui rand din tabela (ii dau ctrl+c si api ctrl+v de cate ori am nevoie, in fisierul meu)
si apoi schimb fiecare rand in parte:
"8";"0";;NULL;"20.0000";'etc...
si apoi "9"; "0";;NULL; "20.0000";, "etc... si
"10"; "0";;NULL; "20.0000";, "etc... ,
"11"; "0";;NULL; "20.0000";, "etc...
as putea popula baza de date mai usor. Practic eu asa avea de modificat doar numarul si descrierea acestora, din moment ce toate produsele sunt la acelasi pret, fabricant, marime, greutate...
Eu m-am gandit ca as putea da copy la un rand din tabela si apoi paste de cate ori am nevoie si apoi as putea sa-l modific intr-un fisier txt sau csv...si sa-l pun la loc cu toate dihaniile insirate acolo.
Dar de unde sa scot eu structura tabelului decat daca o export din PHPMyAdmin?
Altfel? Eu am intr-un fisier .doc toate produsele cu descrierea lor insirate... E clar ca nu pot baga doc-ul in baza de date, nu? Tre' sa-i dau o forma anume, specifica csv-ului sa-mi permita inserarea produselor in baza de date. Nu am un csv cu produsele, gata aranjat!
Se poate face asta daca respect sablonul csv-ului exportat din produse, dar nici pana la Craciunu' viitor nu-mi pune pe categorii, asa cum trebuie !
Beeuser, te rog sa ma scuzi daca sunt prea insistent. Nu vreau lucrul acesta.
Inteleg daca nu vrei sa-ti mai bati capul cu mine...
Cele bune si multumesc pentru timp.
Remus.
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 2 vizitatori