Hvordan du setter inn data i mysql

Hvordan du setter inn data i mysql
MySQL er en populær RDMS som brukes til å administrere dataene til et nettsted eller applikasjon ved å bruke spørringsspråket kjent som SQL. Dataene til nettsteder lagres i form av tabeller, og for å sette inn store datamengder vil det være ganske tidkrevende, for dette formålet tilbyr SQL forskjellige måter å sette inn data i bulk. I dette innlegget lærer vi innsetting av hoveddelen av data ved hjelp av en enkelt spørring i tabellen til MySQL.

Hvordan sette inn bulkdata i MySQL

Mange ganger skal mange oppføringer gjøres i databasen ved å bruke den samme spørringen, for eksempel for å lage et resultatkort av studenter, i stedet for å sette inn hver elevs resultatrekord separat som vil ta mye tid, anbefales det å oppdatere posten til alle studentene som bruker enkeltspørsmålet.

Det er to forskjellige måter å sette inn data om bulk i MySQL.

Metode 1: Bruke Load Data Statement med CSV -fil

En annen metode er å sette inn data fra en CSV -fil, for å forstå dette, vil vi lage en tabell med lærere navn med fagene sine som de lærer i en klasse ved hjelp av en kommando:

Lag tabelllærer_navn (lærer_id int, lærernavn varchar (50), emne varchar (50));

Åpne en tekstfil og skriv inn følgende data:

lærer_id, lærernavn, emne
1, ”John”, ”engelsk”
2, ”Sophia”, ”Science”
3, ”Paul”, ”Arts”

Lagre tekstfilen med navn "lærer_navn.CSV”. Du kan møte en feil i -Sikker-fil-privat Alternativ mens du laster inn dataene, som vist på bildet nedenfor:

Last inn data infile '/home/lærer_navn.CSV 'inn i tabelllærer_names felt avsluttet av', 'vedlagt av' '' linjer avsluttet av '\ n' ignorere 1 rader;

For å løse dette problemet må du flytte lærernavnene.CSV til Secure_file_priv variabel mappe. Utfør kommandoen for å lokalisere banen til variabel Secure_file_priv:

Vis variabler som "secure_file_priv";

Flytt nå CSV -filen til /var/lib/mysql-myfiles mappe:

Kjør følgende kommando for å importere alle dataene fra lærer_navn.CSV fil til lærer_navn Tabell over mysql:

Last inn data infile '/var/lib/mysql-files/lærer_navn.CSV 'inn i tabelllærer_names felt avsluttet av', 'vedlagt av' '' linjer avsluttet av '\ n' ignorere 1 rader;

Å åpne og bekrefte filen:

Velg * fra lærer_navn;

Metode 2: Bruke innsatsen i uttalelse

Den første metoden er å bruke INSERT -kommandoen for innsetting av bulkdata. La oss diskutere den generelle syntaksen ved å bruke kommandoen for å sette inn bulkdata i MySQL.

Syntaks for å sette inn bulkdata i MySQL

Den generelle syntaksen for å sette inn bulkverdier i en tabell i MySQL er:

Sett inn i tabell_navnverdier (data), (data), (data);

Forklaringen til ovennevnte generelle syntaks er enkel:

  • Skriv inn klausulinnsatsen i og tabellnavnet du vil sette inn dataene
  • Bruk klausulverdiene og deretter i parentesene skriv dataene fra den første raden, lukk parentesene, og etter å ha satt komma
  • Etter komma bruker parentesene og angir dataene til den andre raden og så videre

For å forstå hvordan dette fungerer, la oss vurdere et eksempel, vil vi lage en tabell med "class_result", ved å bruke kommandoen:

Opprette tabell class_result (st_id int, st_name varchar (50), st_grade char (25));

Vi vil sette inn resultatet av fem studenter som bruker enkeltkommandoen:

Sett inn class_result -verdier (1, 'John', 'A'), (2, 'Elsa', 'D'), (3, 'Sophia', 'B'), (4, 'Paul', 'B' ), (5, 'Saira', 'A');

For å vise innholdet i tabellen:

Velg*fra Class_Result;

Fra output ovenfor ser vi at vi har satt inn en hoveddel av data ved hjelp av en enkelt spørring i stedet for å sette inn dataene ved forskjellige spørsmål.

Konklusjon

Det sparer mye tid for å sette inn en del av dataene ved hjelp av en enkelt spørring i MySQL. I dette innlegget lærer vi måten å sette inn hoveddelen av verdiene i tabellen til MySQL ved å bruke en enkelt kommando. Vi opprettet en tabell, satte inn flere rader med poster i tabellene ved å bruke en enkelt MySQL -spørring, og prøvde å forklare hvordan bulkdata kan settes inn i tabellen til MySQL. Vi forklarer også å sette inn dataene fra CSV -formatfilen i MySQL -tabellen ved hjelp av spørringen i lastetabellen.