Gå til innhold

Loade fil inn i mysql database


Anbefalte innlegg

Skrevet (endret)

Jeg kjører en mysql database(v.5.0.18) lokalt på maskinen min. Jeg ønsker å opprette tabeller ved hjelp av en fil. Hva er syntaksen for innlasting av fil?

 

Har testet:

LOAD DATA INFILE 'filnavn';

 

Får denne feilmeldingen:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'infile '/home/orjanp/tables.sql'' at line 1

Query not active load infile '/home/orjanp/tables.sql'

 

Har testet både med full path og kun filnavn.

 

Fila ser slik ut:

CREATE TABLE Professor (
  ProfessorID INT NOT NULL PRIMARY KEY,
  Name        VARCHAR(50) NOT NULL)
TYPE = InnoDB;

CREATE TABLE Course (
  CourseID INT NOT NULL PRIMARY KEY,
  Name     VARCHAR(50),
  Credits  INT)
TYPE = InnoDB;

 

I tillegg har jeg en fil som ser slik ut:

INSERT INTO Professor (ProfessorID,Name) VALUES (1,'Prof. Dawson');
INSERT INTO Professor (ProfessorID,Name) VALUES (2,'Prof. Williams');
INSERT INTO Professor (ProfessorID,Name) VALUES (3,'Prof. Ashby');

INSERT INTO Course (CourseID,Name,Credits) VALUES (1,'Mediaeval Romanian',5);
INSERT INTO Course (CourseID,Name,Credits) VALUES (2,'Philosophy',5);
INSERT INTO Course (CourseID,Name,Credits) VALUES (3,'History of Computing',5);

 

Har opprettet en database og valgt den. Det er ikke noe problem å opprette en tabell manuellt. Heller ikke noen problem å slette en tabell.

Kjører dette under linux og bruker Tora som klient for å koble meg til databasen og utføre kommandoer.

Har også testet ved å logge meg inn via mysql i terminal.

 

Noen som har noen tips?

 

Ørjan...

Endret av Orjanp
Videoannonse
Annonse
Skrevet
Jeg kjører en mysql database(v.5.0.18) lokalt på maskinen min. Jeg ønsker å opprette tabeller ved hjelp av en fil. Hva er syntaksen for innlasting av fil?

 

Har testet:

LOAD DATA INFILE 'filnavn';

 

Får denne feilmeldingen:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'infile '/home/orjanp/tables.sql'' at line 1

Query not active load infile '/home/orjanp/tables.sql'

 

Har testet både med full path og kun filnavn.

 

Fila ser slik ut:

CREATE TABLE Professor (
  ProfessorID INT NOT NULL PRIMARY KEY,
  Name        VARCHAR(50) NOT NULL)
TYPE = InnoDB;

CREATE TABLE Course (
  CourseID INT NOT NULL PRIMARY KEY,
  Name     VARCHAR(50),
  Credits  INT)
TYPE = InnoDB;

 

I tillegg har jeg en fil som ser slik ut:

INSERT INTO Professor (ProfessorID,Name) VALUES (1,'Prof. Dawson');
INSERT INTO Professor (ProfessorID,Name) VALUES (2,'Prof. Williams');
INSERT INTO Professor (ProfessorID,Name) VALUES (3,'Prof. Ashby');

INSERT INTO Course (CourseID,Name,Credits) VALUES (1,'Mediaeval Romanian',5);
INSERT INTO Course (CourseID,Name,Credits) VALUES (2,'Philosophy',5);
INSERT INTO Course (CourseID,Name,Credits) VALUES (3,'History of Computing',5);

 

Har opprettet en database og valgt den. Det er ikke noe problem å opprette en tabell manuellt. Heller ikke noen problem å slette en tabell.

Kjører dette under linux og bruker Tora som klient for å koble meg til databasen og utføre kommandoer.

Har også testet ved å logge meg inn via mysql i terminal.

 

Noen som har noen tips?

 

Ørjan...

5630389[/snapback]

 

 

jeg tror konsoll for mysql fungerer likt på linux og windows, koden etterpå fungerer på win iallfall.

 

mysql -u username -p databasename< input-filename.sql

 

Dette er syntaks, username = ditt brukernavn, databasenavn = databasen data skal inn i, input-filename = filen hvor DDL og DML er lagret

Dette er gamlemåten, prior til v5.

Googlet meg frem til denne syntaksen for LOAD DATA:

 

LOAD DATA INFILE 'data.txt' INTO TABLE tbl_name

FIELDS TERMINATED BY ',' ENCLOSED BY '"'

LINES TERMINATED BY '\n';

 

Ser ut til at dette kan brukes først når tabellene er opprettet.

Den gamle syntaksen kan også brukes til å opprette tabeller samt populere de med data.

Håper dette kan hjelpe deg.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...