/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Mysql - Insert
Fra : Kaare Christensen


Dato : 19-07-01 23:29

Hej edb.database

Her er lige et lille MySQL spørgsmål/problem som jeg ikke helt forstår.

I deres manualen under ( http://www.mysql.com/doc/I/n/Insert_speed.html )
står der flg.:

----------------------------------
[klip]
* If you are inserting many rows from the same client at the same time, use
multiple value lists INSERT statements. This is much faster (many times in
some cases) than using separate INSERT statements.
[klip]
----------------------------------

Vil det sige at man godt kan sætte flere "rows" ind på en gang ved kun at
bruge en query? Umiddelbart kunne jeg ikke finde noget om dette i
manualen/på internettet.

Det kunne for eksempel være en liste med 100 emails man skulle sætte ind.
Vil det så være muligt at gøre dette i 1 query (samtidig med at man kun
"connecter" en gang til databasen), istedet for i 100 forsk. queries?

--
Mvh.
Kåre Christensen
http://www.mermaidconsulting.com



 
 
Anders Hertz (20-07-2001)
Kommentar
Fra : Anders Hertz


Dato : 20-07-01 07:17

On Fri, 20 Jul 2001 00:28:33 +0200, "Kaare Christensen"
<kaare@mermaidconsulting.com> wrote:

>
>Vil det sige at man godt kan sætte flere "rows" ind på en gang ved kun at
>bruge en query? Umiddelbart kunne jeg ikke finde noget om dette i
>manualen/på internettet.

mysql> INSERT INTO a VALUES (1,23),(2,34),(4,33);

>
>Det kunne for eksempel være en liste med 100 emails man skulle sætte ind.
>Vil det så være muligt at gøre dette i 1 query (samtidig med at man kun
>"connecter" en gang til databasen), istedet for i 100 forsk. queries?

Kig nærmere på LOAD DATA INFILE.

Kristian Damm Jensen (20-07-2001)
Kommentar
Fra : Kristian Damm Jensen


Dato : 20-07-01 07:10

Kaare Christensen wrote:
>
> Hej edb.database
>
> Her er lige et lille MySQL spørgsmål/problem som jeg ikke helt forstår.
>
> I deres manualen under ( http://www.mysql.com/doc/I/n/Insert_speed.html )
> står der flg.:
>
> ----------------------------------
> [klip]
> * If you are inserting many rows from the same client at the same time, use
> multiple value lists INSERT statements. This is much faster (many times in
> some cases) than using separate INSERT statements.
> [klip]
> ----------------------------------
>
> Vil det sige at man godt kan sætte flere "rows" ind på en gang ved kun at
> bruge en query? Umiddelbart kunne jeg ikke finde noget om dette i
> manualen/på internettet.

RTFM

Lidt længere nede på samme side har de eksempler på insert:

mysql> INSERT INTO a VALUES (1,23),(2,34),(4,33);
mysql> INSERT INTO a VALUES (8,26),(6,29);

Dette er ikke standard-syntax. Derimod vil jeg gætte på, at man her
sætter hhv. 3 og 2 rækker ind i hver query.

Du kan også kigge på "7.21 Insert Syntax", hvor vi bl.a. finder følgende
mulige syntaks.

INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
[INTO] tbl_name [(col_name,...)]
VALUES (expression,...),(...),...

Bemærk her, at der findes flere sæt parenteser efter "VALUES". Igen et
tegn på at man kan indsætte flere dataset i en insert.

--
Kristian Damm Jensen | Feed the hungry. Go to
kristian-damm.jensen@cgey.dk | http://www.thehungersite.com
Two wrongs doesn't make a right, but three lefts does.


Kaare Christensen (20-07-2001)
Kommentar
Fra : Kaare Christensen


Dato : 20-07-01 12:06

Takker Kristian

Mvh.
Kaare Christensen



Søg
Reklame
Statistik
Spørgsmål : 177554
Tips : 31968
Nyheder : 719565
Indlæg : 6408857
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste