MySQL maakt gebruik van het " INSERT " en " LOAD DATA " statements om records te voegen in een database tabel . De " INSERT " statement laadt een record tegelijk , terwijl de " LOAD DATA " statement invoer van gegevens uit een extern tekstbestand . De " LOAD DATA " statement leest snel het tekst bestand regel voor regel waardoor het veel sneller dan een " INSERT " maakt bij het laden van meerdere records in een keer. Het creëren van het tekstbestand Elke regel van het tekstbestand moet overeenkomen met een record ( rij ) in de tabel . De waarden voor elke kolom moeten worden gescheiden door een tab en een null ( ontbrekende ) waarden moeten worden vertegenwoordigd door de " \\ N " -aanduiding . Bijvoorbeeld , als u een tabel met adressen met de kolomnamen zijn fname , lname , staddress , zip , zou u het opzetten van de volgende tekstbestand en sla het op als " addresses.txt " Kris Miller 301 Anywhere St 17598Steve Fetterhoff 305 St. Elsewhere Ave 17989James Smith 623 Kensington Ct 98539 < br > het bestand moet met de kolommen in dezelfde positie als in de tabel . Als u niet zeker bent van de kolommen , typt u het commando " DESCRIBE tablename ; " . Vervang " tabelnaam " met de naam van de tabel . Laden de Gegevens Om de data te laden in de tabel , moet u eerst verbinding maken met de MySQL- server , en selecteer de juiste database. Zodra u bij de " mysql > " prompt , zal u de volgende opdracht : LOAD DATA LOCAL INFILE ' /home /user /address.txt ' INTO TABLE adres ; Het exacte pad om het bestand na het woord " INFILE " moet worden opgegeven en worden tussen enkele aanhalingstekens . Het voorbeeld hierboven toont een Linux /Unix- pad , zou het pad voor een Windows machine iets als " C : . \\ Documents and Settings \\ gebruikersnaam \\ address.txt " Ook als het bestand is gemaakt met een Windows- teksteditor , moet u de \\ r \\ n lijn terminator in de LOAD DATA commando te geven met de volgende syntaxis : LOAD DATA LOCAL INFILE ' /home /user /adres . txt ' INTO TABLE adres LINES beëindigd door ' \\ r \\ n " ; Zodra de " mysql > " prompt terugkeert , kunt u controleren of uw gegevens correct met de volgende vraag was geladen : SELECT * FROM adres ; . Deze vraag zal terugkeren met de volledige record voor het " adres " tafel opgemaakt in rijen en kolommen LOAD DATA Opties < br > de LOAD DATA statement heeft een aantal opties die u zal toestaan om een andere indeling te gebruiken voor uw tekstbestand en omgaan met de import van gegevens . Het voorbeeld hierboven , gebruikt het "LOCAL " optie . Deze optie zegt om te kijken op de client machine voor het bestand . Als u verbinding maakt met een externe MySQL server en laat de " LOCAL " optie , moet het bestand worden gevestigd op de MySQL server en zal direct vanaf de server worden gelezen . De optie " REPLACE " zegt tegen de vervanging van rijen met dezelfde primaire sleutel als de rij in het bestand . Een primaire sleutel is de waarde die uniek identificeert elke record in een tabel . De optie " NEGEREN " zegt om eventuele rijen die een bestaande rij , op basis van de primaire sleutel dupliceren overslaan . Deze twee opties zijn aangewezen na de bestandsnaam en vóór het woord " IN " , zoals : LOAD DATA LOCAL INFILE ' /home /user /address.txt ' REPLACE INTO TABLE adres ; u kunt ook aangeven dat de velden worden gescheiden door een ander dan een tab-teken , zoals een komma gescheiden waarden ( CSV ) bestand , met de " FIELDS beëindigd door " optie . Deze optie wordt opgegeven na de naam van de tabel met de volgende syntaxis : LOAD DATA LOCAL INFILE ' /home /user /address.txt ' REPLACE INTO TABLE adres FIELDS opgezegd door ' , ' ; u kunt meer opties die gebruikt kunnen worden door de " LOAD INTO " statement in de MySQL documentatie ( zie bronnen ) te vinden .
|