sql >> Database teknologi >  >> RDS >> Mysql

Hvordan henter jeg en liste over oprettede id'er til masseindsættelse i Active Record?

I øjeblikket er den bedste (men ikke ideelle) løsning at masseimportere ved hjælp af "activerecord-import" . Desværre returnerer den perle ikke de indsatte id'er, så du bliver nødt til at vende om og forespørge for at få id'erne. Det vil sige, du vil masseindsætte hændelsesmodellerne, forespørge i db'en for at få dem alle tilbage i hukommelsen. Nu har du begivenheds-id'erne, så du kan oprette kuponerne og masseindsætte dem. Skyl skumgentagelse for CouponEvents.

Sammenlignet med en rundrejse pr. begivenhed, kupon og kuponbegivenhed - formentlig tusindvis af rundrejser for en fil med tusindvis af rækker - laver du kun 2 rundrejser pr. model - En til at indsætte begivenheden, en til at hente begivenhederne tilbage med id'erne , ditto Kupon og CouponEvent - i alt 6 rundrejser.



  1. SQL Server indsæt, hvis ikke eksisterer bedste praksis

  2. FROM_UNIXTIME() Eksempler – MySQL

  3. Hvordan bruger man PATCH til at opdatere et simpelt databasefelt?

  4. MySql cursors.execute() med kun én parameter:Hvorfor er en streng opskåret i en liste?