[R] RMySQL - Bulk loading data and creating FK links
    Olga Lyashevska 
    olga at herenstraat.nl
       
    Wed Jan 27 11:34:21 CET 2010
    
    
  
Hi Nathan,
> I have a table (contact) with several fields and it's PK is an auto  
> increment field. I'm bulk loading data to this table from files  
> which if successful will be about 3.5million rows (approx 16000 rows  
> per file). However, I have a linking table (an_contact) to resolve a  
> m:m relationship between the an and contact tables. How can I  
> retrieve the PK's for the data bulk loaded into contact so I can  
> insert the relevant data into an_contact.
>
> I currently load the data into contact using: dbWriteTable(con,  
> "contact", dat, append=TRUE, row.names=FALSE)
>
> But I then need to get all the PK's which this dbWriteTable()  
> appended to the contact table so I can load the data into my  
> an_contact link table. I don't want to issue a separate INSERT query  
> for each row in dat and then use MySQLs LAST_INSERT_ID()  
> function....not when I have 3.5million rows to insert!
>
> Any pointers welcome,
> Nathan
>
It looks to me more like sql question. Why don't you use sql to write  
a query which will join all tables for you and then use RMySQL to  
retrieve relevant data?
Of course,  you could also dbGetQuery.
Can you please explain a bit how you entity-relationship diagram looks  
like?
Cheers,
Olga
    
    
More information about the R-help
mailing list