webForumDet fria alternativet

Jämföra mysql-data med extern prislista?

Databaser & SQL

17 svar · 776 visningar · startad av Guldstrand

Medlem sedan juli 20041 271 inlägg
Frågan#1

Jag skulle behöva kolla (och ev. uppdatera) lagerstatus i min mysql-databas, med resultat som inhämtas från en extern textfil.

Textfilen visar inte bara de produkterna som jag har i databasen, så jag måste först begränsa till att endast hämta den datan som finns i mysql, och sedan kolla/jämföra lagerstatusen med textfilen.

Någon vänlig person som kan skjutsa mig i rätt riktning? :birp

Medlem sedan okt. 201187 inlägg
#2

Läs in data i en temporär tabell och matcha data't från den.
/Hasse

Medlem sedan juli 20041 271 inlägg
#3

berken skrev:

Läs in data i en temporär tabell och matcha data't från den.
/Hasse

Är detta det mest "optimala" -och/eller enklaste sättet?

Medlem sedan okt. 201187 inlägg
#4

Om du får in data i databasen så är det inget större äventyr att skapa en uppdaterings query som uppdaterar dina lagersaldon. Jag tycker det är enklast men vad hade du för egen ide om det hela ?

Medlem sedan juli 20041 271 inlägg
#5

berken skrev:

Om du får in data i databasen så är det inget större äventyr att skapa en uppdaterings query som uppdaterar dina lagersaldon. Jag tycker det är enklast men vad hade du för egen ide om det hela ?

Ok!

Jag tänkte mer om jag skulle läsa in hela textfilen i en array, och sedan kolla lagerstatusen på de produkterna som finns i databasen.
Sen köra en uppdatering på fältet i databasen, om statusen har ändrats.
Tror dock att det blir mer resurskrävande på detta/mitt sätt? :r

Medlem sedan okt. 201187 inlägg
#6

Mitt sätt är antagligen stabilare om du bara får till uppdatering frågan. I villkoret kan du även lägga till att lagervärdet på posten ska skilja sig från motsvarande post temp-tabellen så blir det inga onödiga skrivningar som "kostar"

Medlem sedan juli 20041 271 inlägg
#7

Hade uppskattat ett exempel på hur uppdateringen kunde se ut.
Är fortfarande lite GRÖN på vissa delar inom mysql.

Medlem sedan okt. 201187 inlägg
#8

Vi tar en sak i taget
Till att börja med, hur tänker du få in datat?

Medlem sedan juli 20041 271 inlägg
#9

Som jag skrev innan, så läser jag in hela textfilen i mysql, inga problem med den biten. ;)

Medlem sedan okt. 201187 inlägg
#10

utmärkt
Har du tillgång till msaccess ?

Medlem sedan juli 20041 271 inlägg
#11

berken skrev:

utmärkt
Har du tillgång till msaccess ?

Tyvärr!

Medlem sedan okt. 201187 inlägg
#12

Ok
Det brukar vara ett lätt sätt att skapa frågor msacess som man sen kan klippa in i mysql.
Skapa temptabellen och skicka över beskrivningen på den och på lagertabellen

Medlem sedan juli 20041 271 inlägg
#13

berken skrev:

Ok
Det brukar vara ett lätt sätt att skapa frågor msacess som man sen kan klippa in i mysql.
Skapa temptabellen och skicka över beskrivningen på den och på lagertabellen

Tänkte att det räcker att bara ta med grossistens artikelnr samt lagersaldot i "temp-tabellen"?

Medlem sedan okt. 201187 inlägg
#14

Det låter bra.
Använd samma namn i temp tabellen som i lagertabellen så slipper du hålla reda på vad som är vad i huvudet.
Vad kallar du grossistens artikelnr och lagersaldot

Medlem sedan juli 20041 271 inlägg
#15

artikelnr = sku (varchar)
lagersaldo = stock (enum, yes/no)

Medlem sedan okt. 201187 inlägg
#16

ok
lagertabell namnet också så
snor jag ihop en fråga till imorgon.
Är det stora volymer ?

Medlem sedan juli 20041 271 inlägg
#17

berken skrev:

ok
lagertabell namnet också så
snor jag ihop en fråga till imorgon.
Är det stora volymer ?

Ja, det är samma namn på båda tabellerna.
Du hinner inte ge ett exempel ikväll? :r

P.s. Är ca 200 produkter, hittills.

Medlem sedan okt. 201187 inlägg
#18

Det var inget stort lager...:-) men då behöver man inte krångal med för mycket optimering
UPDATE Table1, Table2 SET Table1.enum = table2.enum
WHERE Table1.enum<>table2.enum AND Table1.sku=table2.sku;

258 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)