Új hozzászólás Aktív témák
-
Apollo17hu
őstag
válasz #68216320 #1147 üzenetére
egyik allekérdezés:
[borok] - [ertekelt_borok] -> SELECT pinceszet_id, AVG(ertek_szam) ...Ez megadja egy pincészetben a borok átlagminősítését.
másik allekérdezés:
[pinceszetek] - [ertekelt_pinceszetek] -> SELECT pinceszet_id, AVG(ertek_szam)Ez megadja egy pincészet átlagminősítését.
A kettőt pedig pinceszet_id -n keresztül összekötöd. A többi táblát ehhez csapod hozzá, ha kell belőle valami.
-
#68216320
törölt tag
válasz Apollo17hu #1151 üzenetére
Sajnos kiderült, hogy nagy mennyiségű adat esetén piszkosul erőforrás igényes lesz. Feleslegesen számol átlagot minden listázásnál. Akkor számoltatok csak vele, mikor új értékelés érkezik és az eredményt eltárolom a borhoz update-el. Onnét már sima ügy lesz csak olvasni, mikor kell.
-
-
#68216320
törölt tag
válasz Peter Kiss #1153 üzenetére
Egyik sem. Hanem ezzel a táblaszerkezettel a LEFT JOIN és Group By sajnos nem elkerülhető, ami esetemben piszok sok sort eredményezne teljesen feleslegesen. Gyakorlatilag az elméleti része volt hibás, hisz miért számoljon minden lekérdezésnél, ha ugyanaz lesz az eredmény. De már megoldódott, kis változtatással, optimalizálással.
select p.*, avg(eb.ertek_szam), avg(ep.ertek_szam) from pinceszetek p
left join borok b on p.id = b.pinceszet_id
left join ertekelt_borok eb on eb.bor_id = b.id
left join ertekelt_pinceszetek ep on ep.pince_id = p.id
group by p.id;Ez egy leegyszerűsitett verzió, tökéletesen működik, de lassú.
pl. 3000 pincészet, pincészetenként 15 bor, boronként 50 értékelés. felesleges sorok a join miatt. ennyi.[ Szerkesztve ]
-
#68216320
törölt tag
válasz martonx #1155 üzenetére
Csak egy minta volt, nem használom. Nem is futtattam le, mert az elv nem tetszett, hogy minden listázásnál/oldalfrissítésnél folyton kiszámolja ugyanezt. Természetesen vannak indexek.
Köszönöm a segítséget, de mint írtam már a táblaszerkezet esett át változtatáson és így nincs felesleges művelet. Csak akkor számoltatok vele, mikor tényleges változtatás történik és az eredményt update-olom. Így becslések alapján kisebb erőforrás igénye lesz, ugyanis lényegesen ritkább lesz az insert/update a select-nél.[ Szerkesztve ]
-
#68216320
törölt tag
foglalasok: (id, user_id, esemeny_id, berlet_id)
esemenyek: (id, nev, helyszin_id, idopont)Azokat az eseményeket kellene listáznom, amik még aktuálisak és amikre nem foglalt a felhasználó (user_id) még helyet.
SELECT e.id, e.nev, e.idopont FROM esemenyek e LEFT OUTER JOIN foglalasok f ON f.esemeny_id=e.id WHERE e.idopont>NOW() AND f.user_id!='%d'
Ez hibás. Segítenétek megtalálni a hibát?
-
futár
aktív tag
válasz #68216320 #1157 üzenetére
üdv. mindenkinek.
Egy programot használok kb. 5 éve, amivel most gondom van. BAD sectoros lett a HDD-m. Ez egy adatbáziskezelő kis alkalmazás, amit anno megvettem. Úgy telepítették fel a gépemre. A problémám a következő. A program MySQL adatbázissal kommunikál, aminek nem tudom a hozzáférési adatait. Jelenleg HDD-t kellene cserélnem a fenti okok miatt és tanácstalan vagyok. A cég kb. 3, vagy 4 éve megszünt, nem tudom elérni őket. Javasolták nekem a klónozást, vagy partíció mentést. Tud ebben nekem valaki segíteni, hogy hogyan tudom úgy kicserélni a HDD-t, hogy működjön a program? Valaki oldott már meg ilyen problémát?
Ha hallgattál volna, bölcs maradtál volna.
-
futár
aktív tag
csak a jelszóval van gondom, a táblákat és a jelszót is látom. A progi nem telepítős, úgyhogy csak le kell mentenem a könyvtárat. És ennyi, de ugye a jelszó az valamilyen titkosítással szerepel, a progi pedig egy előre konfigurált felhasználónévvel - jelszóval kommunikál. Egy másik gépen XAMPP van telepítve, oda nem is tudtam felrakni, mert hisztizett a felhasználónév és jelszó miatt.Ha hallgattál volna, bölcs maradtál volna.
-
martonx
veterán
-
futár
aktív tag
Erre valaki? #1158
Ha hallgattál volna, bölcs maradtál volna.
-
Sk8erPeter
nagyúr
Igazából a kérdésedből nem tudtam kihámozni, hol van az adatbázissal kapcsolatos kérdés, mert ha jól értem, az elsődleges probléma a klónozás. Azt pedig így is-úgy is meg kell tenni. Erre Fire/SOUL/CD cikkét ajánlom, amiben mondjuk azt fejti ki, hogyan lehet SSD-re költöztetni a rendszeredet HDD-ről, de az ott szereplő, ingyenes Macrium Reflect nevű programot ilyen célra is fel tudod használni, a lényeg, hogy mindkét vinyó egyszerre csatlakoztatva legyen (a forrás és a cél), és a Macriumot pendrive-ról vagy CD-ről bootolós módban indítsd el, ne Windows alól. De egyébként ezt simán egy live Linux-szal is megteheted, pendrive-ra például ezzel a progival tudsz a lehető legegyszerűbben telepíteni egy Live Linuxot: UNetbootin. Itt egyszerűen kiválasztod az adott disztribúciót, kijelölöd, melyik pendrive-ra telepítse, rányomsz az OK-ra, vársz, míg kész van, és megvagy, újraindítod a gépet, és már bootolhatod is a pendrive-ra telepített Linuxot (például egy Parted Magic tökéletesen jó lesz neked). De a Fire által ajánlott Macriumot is rohadt egyszerű telepíteni, részletesen ki van fejtve, UltraISO kell hozzá majd. Használni sem bonyolult.
Szerk.: OFF-ba rakom, mert nagyon nem kapcsolódik a MySQL-hez.
[ Szerkesztve ]
Sk8erPeter
-
futár
aktív tag
válasz Sk8erPeter #1166 üzenetére
Azért a MySQL topikba írtam, mert a progi MySQL alapú, megvan az adatbázis is. A progi nem telepítős, vagyis a partíciómentésnél lehet egyszerűbb is lenne. Ha simán átmásolom, akkor a jelszó - felhasználónév nem változhat, mégis
"MySQL has gone away" hibát ír ki. És
"SQL hiba: denied for user 'ODBC'@'localhost' (using password: NO)
Ezekre gyógyír esetleg? Arra mód,hogy csak a programot klónozzam, vagy backupoljam?Ha hallgattál volna, bölcs maradtál volna.
-
Sk8erPeter
nagyúr
Még mindig nem írtad le normálisan, hogy miket csináltál. Újraraktad a Windows-t egy másik vinyóra? Próbáltál klónozni, vagy simán másolni, vagy mi történt? Ha bad sectoros a vinyó, gondolom (remélem) nem azt használod épp. A MySQL-adatbázis FIZIKAI helyéhez pedig a programodnak nem kellene, hogy köze legyen, mert nem úgy működik, hogy megkeresi az adott könyvtár fizikai elérési útvonalát, hanem portokon, kommunikációs protokollon keresztül, stb. Szóval az adott júzernek valszeg nem adtál megfelelő jogosultságot. De simán klónozhattad is volna a teljes vinyót, és akkor nem lenne ilyen para most. De nem megoldhatatlan, csak akkor most szenvedned kell azzal, hogy megpróbáld a bad sectoros vinyón lévő dolgokat ugyanúgy beállítani az új rendszer esetén (attól függően, hogy csináltad végül).
[ Szerkesztve ]
Sk8erPeter
-
martonx
veterán
-
futár
aktív tag
válasz martonx #1169 üzenetére
Simán átmásolva az6 új rendszerre dobta azokat a hibákat. NERO backuppal próbáltam megcsinálni, de akkor adatolvasási hibával leáll. Az adatbázisról van mentésem, valamint a program is megvan korábbról, csak más irányból próbáltam megközelíteni. Azt gondoltam csak én vagyok kevésbé otthon a MySQL-ben. Ezek szerint az egyetlen mód a partíció backup mentés és restore lehet? Lehet valamilyen más megoldás is?
Ha hallgattál volna, bölcs maradtál volna.
-
Sk8erPeter
nagyúr
Nem értem, miért fáj a legtisztább, legcélravezetőbb megoldás? Nem a korábbi rendszeredet akarod egy az egyben átvinni egy új HDD-re, hogy gond nélkül tovább tudd használni pont úgy, ahogy korábban is volt?
Amúgy semmit nem tudunk még mindig arról az ominózus programról, a korábbi jogosultsági beállításaidról, kábé csak azt tudjuk, hogy bad sectoros lett a vinyód, és MySQL-adatbázist használsz, és kész.
Nyilván nem futó rendszer alól kellene egyébként másolni, hanem mint elég hosszasan kifejtettem, valami Live Linuxról vagy az ajánlott Macriumról, mindenesetre valami live oprendszerről.
Bár sanszos, hogy nálad továbbra is elsősorban a jogosultsági dolgok nem stimmelnek, ezt kellene korrigálnod, de mivel úgy tűnik, nem vágod, korábban hogy működött, maradjunk továbbra is a rendszer klónozásánál.Sk8erPeter
-
futár
aktív tag
válasz Sk8erPeter #1171 üzenetére
Megpróbálom! A jogosultságra azért nem tudok mit mondani, mert soha nem állítottam semmit. Volt egy felhasználónevem és jelszavam a programhoz, és kész. Ennyi. Nem kellett semmit csinálni, csak annyit, hogy a MySQL-t elindítottuk parancssorból. De ezek rég voltak már. Mint írtam is. Csak a forgalmazó legalább 4 éve nem létezik. Még XP-re volt telepítve, de ugye már Win 8-nál tartunk. Ezért kérdeztem a többi lehetőséget. Mert akkor használhatnám azon a rendszeren is.
Ha hallgattál volna, bölcs maradtál volna.
-
Sk8erPeter
nagyúr
Ja, értem, de akkor miért nem ezzel kezdted, hogy emiatt érdekel? Úgy más a dolog, de eddig ott tartottunk, hogy elcsesződött a vinyód, és pont ugyanúgy szeretnéd működtetni a progit, ahogy előtte működött, a vinyó meghibásodása előtt, de klónozásra lehetőséged lenne, de mégsem akarod valami érthetetlen oknál fogva klónozni.
Mindenesetre továbbra is az a probléma, hogy SEMMILYEN információt nem osztottál meg a programodról azonkívül, hogy MySQL-adatbázisra épít.Sk8erPeter
-
futár
aktív tag
válasz Sk8erPeter #1173 üzenetére
Teljesen félreértettél! A klónozás egyike a legjobb megoldásoknak, de azért lenne jó, ha a programot is tudnám átrakni, mert bővültünk egy géppel és azon Win 7 van. Azt viszont, cég lévén valamint mivel már nincs XP kereskedelmi forgalomban és a meglévőt nem is lenne gazdaságos lecserélni... Szóval erre a gépre is fel szeretném rakni. Ez egy készletnyilvántartó program, ahol képekkel, vonalkóddal spékelve lehet készíteni termék adatlapokat. Az elmúlt 5 év során megtanultuk. Anno meg is vettük. Ebben a gazdasági helyzetben örülünk, hogy élünk. Ezért lenne fontos a probléma ilyen módú megoldása, ha nem megy, akkor marad a "B" terv.A program könyvtárszerkezete a következő? Van a program a 'C' gyökérben és ugyanitt egy MYSQL könyvtár is. Tulajdonképpen ennyi. Ha nincs más, akkor megy 1 gépen.
Ha hallgattál volna, bölcs maradtál volna.
-
futár
aktív tag
válasz fordfairlane #1175 üzenetére
Ezt is kipróbálom!
KösziHa hallgattál volna, bölcs maradtál volna.
-
futár
aktív tag
válasz fordfairlane #1175 üzenetére
Létrehoztam:
Most ez a hiba:
'SQL hiba: does noe support authentication protocoll requested by server; consider upgrading MySQL client'.A hiba előtt ezt írja ki: 'MySQL has gone away'
[ Szerkesztve ]
Ha hallgattál volna, bölcs maradtál volna.
-
futár
aktív tag
válasz fordfairlane #1178 üzenetére
igen, ez egy XAMPP, ami viszont fel lett telepítve anno, ott nem tudom hogyan tudnám létrehozni a felhasználót, mert phpMyAdmin nincs, DOS-ban indítottam el.
Ha hallgattál volna, bölcs maradtál volna.
-
fordfairlane
veterán
Úgy látom, hogy a Mysql 4.0.x -> 4.1.x váltásnál jött elő először ez az autentikáció probléma. Van valami old_passwords nevű my.ini direktíva, amivel ez talán orvosolható a legfrissebb Mysql esetében is. Ha nem, akkor régebbi verzióval kell próbálkozni.
[ Szerkesztve ]
x gon' give it to ya
-
futár
aktív tag
-
Sk8erPeter
nagyúr
http://stackoverflow.com/questions/4312710/client-does-not-support-authentication-protocol-requested-by-server
http://wordpress.org/support/topic/how-to-fix-client-does-not-support-authentication-protocol-requested-by-server
http://stackoverflow.com/questions/1575807/cannot-connect-to-mysql-4-1-using-old-authenticationSk8erPeter
-
futár
aktív tag
válasz fordfairlane #1180 üzenetére
A MySQL/bin könyvtárban jévő mysql.exe a következőt írja ki:
Ver 14.14 Ditrib 5.1.36, for Win32. Vagyis ezek szerint nem ez a gond.
Szerintem inkább valami másolásvédelem lehet, mivel semmit nem változatok, csak egy másik gépre átmásoltam a 2 könyvtárat. Ezért marad a klónozás.Még annyit, hogy nem kellett telepíteni, erre emlékszem.
a MySQL könyvtárban van egy MySQLInstanceConfig.exe[ Szerkesztve ]
Ha hallgattál volna, bölcs maradtál volna.
-
futár
aktív tag
válasz fordfairlane #1184 üzenetére
Mint pl? Futtatni egy Virtual Boxot? És oda feltelepíteni a backupolt rendszert?
Ha hallgattál volna, bölcs maradtál volna.
-
futár
aktív tag
válasz fordfairlane #1186 üzenetére
Ez nem egy rossz ötlet, mindenképpen kipróbálom. Köszönöm!
Ha hallgattál volna, bölcs maradtál volna.
-
SureStudio
tag
Sziasztok!
Van egy regisztrációs oldalam...és azt szeretném, hogy a regisztráltak adatait valahogy kilistázza az adatbázisból. Ezt hogyan lehetne megoldani?
Előre is köszönöm!*-._.-* *-._.-*-* [SureStudio] *-*-._.-* *-._.-*
-
válasz SureStudio #1188 üzenetére
szelekt csillag from regisztrációk
-
Jinxb1rd
addikt
Hú látom, ez a topik annyira nem pörög de hátha...
utf8_hungarian_ci illesztésű adatbázisokat használok és nem tudom, hogy mit kellene használnom az sql-es lekérdezéseimben a keresés modulban.
A sima 'LIKE' esetén, ha beírják a keresőbe azt hogy kő, akkor ki fogja dobni azt is, hogy kö, tehát az ékezetekkel gondok vannak. Beletetettem a 'BINARY'-t, azonban így meg a kis és nagybetűket is megkülönböztetni, ami nem jó.Ti milyen módszert tudnátok javasolni?
We are only Stardust...
-
Jinxb1rd
addikt
válasz Apollo17hu #1191 üzenetére
Hm, nem is tudtam, hogy ilyenek is vannak. Megnézem majd. Köszi!
We are only Stardust...
-
-
Jinxb1rd
addikt
válasz Peter Kiss #1193 üzenetére
Nem lehet ezzel emgelégedni, gondolj csak bele. Az össze termék nagybetűvel kezdődik, akkor az összes termék elő szava kieshet így.
We are only Stardust...
-
-
biker
nagyúr
UTF8 kódolású táblába importálnék csv-ből, de ha nem utf8 a kódolása, hibás lesz
LOAD DATA LOCAL INFILE :file INTO TABLE ar_termekek CHARACTER SET UTF8 FIELDS TERMINATED BY ';' ENCLOSED BY '\"' LINES TERMINATED BY '\r\n' IGNORE 1 LINES SET bolt_id= :bolt_id, frissitve=NOW();hiába a character set utf8, ha latin2 a csv, akkor a mező első ékezetes karakterénél töri a mező tartalmát, pl kézi fólia, akkor k betű marad benne
Mi a megoldás?
Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |
-
biker
nagyúr
-
biker
nagyúr
válasz martonx #1199 üzenetére
az a baj, nem olvasol
a detect_encoding meg a convert_encoding az stringekre jó
az anyag meg fileban van.nyissam meg az 50megás csv-t, és sorról sorra olvassam be és konvertáljam?
érted már?Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |