 |
Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Comunitatea PHP Romania
|
| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
pdaniel
Data înscrierii: 18/Ian/2005
Mesaje: 63
|
| Trimis: Dum Sep 04, 2005 3:15 pm Titlul subiectului: load data infile |
|
|
Am urmatorul fisier text:
(1 data1text data2text data3text ) si o tabela in baza de date (id data1 data2 data3). Ma rog, fisieru are mai multe inregitrari. Pe mine ma intereseaza sa bag informatia in tabela mea, si fiecare camd din fisier sa ionyre in campul corespunzator din baza. Am incercat sa folosesc dupa fiecare cuvant din fisieru text cate un \t si am dat comanda mysql astfle :
LOAD DATA INFILE 'data.txt'
INTO TABLE info
FIELDS TERMINATED BY '\t'
(id, data1, data2 data3);
fisieru meu ar fi aratat asa cu '\t' dupa fiecare cuvant (1\t data1text\t data2text\t datat3text\t). Comanda imi baga doar primu element adica 1 in baza. Ce pot face. Exista vre-o solutie? Si inca ceva, daca o linie din fisieru text se repeta de mai multe ori cum le pot baga pe fiecare fara sa-mi dea eroare duplicate key? Eu o sa am nevoie de fiecare bagat ca sa pot face niste calcule matematice dupa aia.
Multumesc. |
|
| Sus |
|
Pirahna
Data înscrierii: 22/Aug/2004
Mesaje: 4341
Locație: la birou
|
| Trimis: Dum Sep 04, 2005 3:18 pm Titlul subiectului: |
|
|
incearca fara spatiu
1\tdata1text\tdata2text\tdatat3text\t |
|
| Sus |
|
whooper
Data înscrierii: 05/Apr/2005
Mesaje: 713
Locație: Toronto ON
|
| Trimis: Dum Sep 04, 2005 5:08 pm Titlul subiectului: |
|
|
sau cu spatiu
LOAD DATA INFILE 'data.txt'
INTO TABLE info
FIELDS TERMINATED BY '\t '
(id, data1, data2 data3);
Daca iti trebuie cu duplicate, scoate cheia de pe campul respectiv, sau modifica tipul ei in asa fel incat sa poata fi admise duplicate .. |
|
| Sus |
|
pdaniel
Data înscrierii: 18/Ian/2005
Mesaje: 63
|
| Trimis: Lun Sep 05, 2005 9:23 am Titlul subiectului: |
|
|
NU merge nici fara spatiu nici cu spatiu. Fisierul meu arata asa :
12\t mm\t orange\t 23\n
23\t mm\tc onnex\t 28\n
Tabela are structura :
DROP TABLE IF EXISTS `info`;
CREATE TABLE IF NOT EXISTS `info` (
`id` int(11) NOT NULL auto_increment,
`data` varchar(255) NOT NULL default '',
`retea` varchar(255) NOT NULL default '',
`consum` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=1 ; |
|
| Sus |
|
pdaniel
Data înscrierii: 18/Ian/2005
Mesaje: 63
|
| Trimis: Lun Sep 05, 2005 9:53 am Titlul subiectului: |
|
|
| Pana la urma am reusit punand ca delimitator intre campuri virgula. A incercat cineva ca delimitator sa fie spatiu. A reusit ? |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |
|