- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- iOS alkalmazások
- Samsung Galaxy S23 Ultra - non plus ultra
- Itt az első kép a 2024-es Nokia 3210-ről
- Vodafone mobilszolgáltatások
- iPhone topik
- Xiaomi Mi 11 Ultra - Circus Maximus
- Fotók, videók mobillal
- Egyre közelebb a Poco F6 startja
- Snapdragon 8-as szériával várhatók a Honor 200-ak?
Hirdetés
-
Snapdragon 8-as szériával várhatók a Honor 200-ak?
ma A Honor 200 állítólag a 8s Gen 3-at, a 200 Pro változat pedig a 8 Gen 3-at használja majd.
-
Két Zen 5-ös dizájnjának mintáit is szállítja már az AMD
ph A szerverpiacra szánt Turin platform, illetve a mobil szintre nevező Strix Point érhető el a főbb partnerek számára.
-
Premier előzetest kapott a V Rising
gp Napokon belül befut a teljes PC-s kiadás, az év során pedig megkapjuk a PlayStation 5 változatot.
Új hozzászólás Aktív témák
-
martonx
veterán
válasz Sk8erPeter #648 üzenetére
Ez pedig nem tűnik rossznak. Milyen hibát kapsz vissza?
Esetleg nyelvi finomságokkal lehetne javítani pl. where és alselect helyett join, majd megadni, hogy melyik táblát update-eled?Én kérek elnézést!
-
martonx
veterán
válasz Sk8erPeter #650 üzenetére
egy példa, hogy mire gondolok:
UPDATE FROM tblTransaction AS t
LEFT JOIN tblEmployee as e
ON e.emp_id = t.emp_id
SET t.emp_block = e.emp_blockÉn kérek elnézést!
-
martonx
veterán
válasz Sk8erPeter #657 üzenetére
Szia!
Esetleg " " idézőjelek közé téve? Mintha MSSQL-ben, meg PostgreSQL-ben az " " jel lenne erre a megoldás. Bár érdemesebb inkább egybe írni, elvégre minek szivasd magad ilyen apróságokkal, nem?
Én kérek elnézést!
-
martonx
veterán
Segítek lefordítom: mysqli bővítmény hiányzik.
Komolyra fordítva a szót, mióta a legújabb xampp-t raktam fel, a mysqli nálam is elfelejtett működni. Valami inkompatibilitás van a legújabb mysql-lel, vagy a php-vel, vagy az apache-al? Végülis mindegy, a sima mysql működik, és nem vettem észre, hogy bármiben is rosszabb lenne a mysqli-nél. Ilyen ez az open source szarakodás, de legalább ingyenes a sok fos komponens.
Te egyébként komolyan fejlesztésre használod a phpmyadmin-t, vagy csak vicceltél?
Én kérek elnézést!
-
martonx
veterán
Semmi baja nincs a mysql-nek a 64 bittel, nekem is azon fut.
A phpmyadmin-os kérdésem után már óvatosan kérdezem, mert nem tudom mikor viccelsz és mikor nem, de te most tényleg azt hiszed, hogy a mysql-ed ben van a hiba?Mert a hibaüzenetet a php-d küldte, a mysqli az egy php bővítmény. De már tényleg elbizonytalanodtam, hogy ezzel most nem-e összezavarlak?
Azaz a mysql-ednek kutya baja, a php-hoz hiányzik egy bővítmény, azt kell pótolni. Bár ha le tudtad fordítani a hibaüzenetet, akkor miért nem értetted meg?Mondjuk ettől függetlenül nem kétlem azt se, hogy nem megy a mysql-ed se, ha már ezt írtad, de akkor meg hogy jön ide a mysqli hiány?
Totál elbizonytalanítottál. Majd holnap, ha összeszedted magad, írd le hogy akkor most mi nem megy (PHP vagy a MySQL, vagy a kettő együtt nem megy, csak külön-külön)???
én biciklizve húztam le ezt a napot, és hidd el más is betegre melózza magát, csak nem hittem el, hogy a phpmyadmin-t a hoszting szolgáltatókon kívül bárki is használja, fejlesztésre meg pláne. Bearanyoztad a napomat ezzel
Én kérek elnézést!
-
martonx
veterán
válasz Sk8erPeter #664 üzenetére
Nem az a baj, hogy ezeket használod, én is használom a hoszting tárhelyeken. Na de ezeket fejlesztésre használni??? A szükség esetén használatával egyetértek, de amikor azt mondja valaki, hogy ezen fejleszt, az a szememben vicc kategória. Jó, mondjuk ki mit ért fejlesztés alatt. Két táblát létrehozni, meg köztük egy join-os selectre, valóban jó tud lenni bármi, még a mysql parancssora is. Ha már itt tartunk minek a phpmyadmin, ha ugyanezt tudja a parancssor is?
A mysqli többet tud, mint a mysql, viszont mysql is jó (ha akarod azt is beágyazhatod egy osztályba, és akkor megvan az objektum orientáltság is), és ott legalább nincsenek ilyen szívások, mint amikor én is pont a héten vettem észre, hogy a mysqli nem hajlandó a legújabb php, mysql, apache verziókkal működni. Egy rakás mysqli-s cuccal a gépemen nem volt felemelő felismerés.
Így magamban el is könyveltem fosként (ettől még nem kezdtem el átírni a régebbi munkáimat, hátha megint kijön majd egy stabil php - mysqli kombó), és egyszerűbb projektekben kerülni is fogom a használatát, mert az végképp nem hiányzik, hogy élesítéskor derüljön ki legközelebb, hogy az éles környezeten éppen nem hajlandó működni. A sima mysql-lel ilyen gonddal még sosem találkoztam.
Egyébként ha már phpmyadmin-t használ valaki fejlesztésre (lásd feljebb kéttáblás select), akkor nem mindegy, hogy mysql, vagy mysqli futtatja a végén a select-et?
Én kérek elnézést!
-
martonx
veterán
válasz Sk8erPeter #666 üzenetére
Nálam php 5.3.5 van, és MySql 5.5. akárhány van (amiket a legújabb xampp tartalmaz). Ha ezekkel megy neked a mysqli, akkor le a kalappal.
Én SQL fejlesztés alatt masszív tárolt eljárás írást értek kurzorokkal, deklarálásokkal, temporary táblákkal. Szeretem amennyire csak lehet adatbázishoz közel tartani a logikát. Aztán az már, hogy az adott tárolt eljárást mysql-lel vagy mysqli-vel hívom meg számomra kb. mindegy.
Mivel innentől kezdve a mysqli-t mellőzöm, a javasolt PDO-t ki fogom próbálni, felkeltetted az érdeklődésemet, köszi!
Én kérek elnézést!
-
martonx
veterán
válasz Sk8erPeter #668 üzenetére
Toad for MySQL-t szoktam használni. Nagy tudású, debug-ot is tud.
MySQL-nek van valami ingyenes menedzsment felülete is, állítólag az se rossz, de még sosem próbáltam.
A Toadban azt szeretem, hogy a felületénél megadható, hogy hasonlítson az MS SQL Mangement Studio-hoz, így nem kell mindent máshol keresnem, mint ahol megszoktam.Én kérek elnézést!
-
martonx
veterán
Toad for Mysql-ben egy kattintás és sql fájlban elmenti a komplett adatbázisomat. Ezt szoktam svn-ezni, sőt ezt szoktam futtatni az éles hoszting phpmyadmin-jában is.
A tesztelés is nehézkesebb??? Ezt hogy érted? Lehet sok PHP hívőt megsértek vele, de a PHP-t eleve nem egyszerű (mondhatni rémálom) tesztelni, debugolni.
Én kérek elnézést!
-
martonx
veterán
válasz Sk8erPeter #674 üzenetére
xdebug-ot én is használom, nem is azt mondtam, hogy PHP-t nem lehet debugolni, hanem azt, hogy sokkal nehézkesebb, mint más nyelveket. Egyébként SQL-t is lehet debugolni, legalábbis MS SQL-t 2008 fölött, illetve a MySQL-t 5-ös verzió felett.
Az indokaim, hogy miért jobb SQL szinten tartani az adatlogikát (félre értések elkerülése végett én sem 100%-ban SQL szinten valósítom meg, csak törekszek rá).
1. Az SQL nagyon buta, cserében bődületesen hatékonyan, akárhány szálra, akármennyi memóriára optimalizálva kezeli az adatokat, adatműveleteket. Rengeteg konkurens felhasználó kiszolgálására van optimalizálva, akárhány magot, akármennyi memóriát ki tud használni.
2. SQL szerverek általában jóval erősebb hardverek, mint a webkiszolgálók.
Hozhatnék itt ezeregy példát, ebben a fenti két pontban minden benne van, hogy miért érdemes az SQL szintre törekedni. És hangsúlyozom, nem a Pistike-féle olcsó hosztingokra gondolok, ahol egy Core2-es szerver egymaga a webkiszolgáló, és az adatbázis szerver is (bár kis mértékben, de az 1-es pont miatt itt is kijön az SQL-es megközelítés előnye), hanem a nagyvállalati infrastruktúrákra. Nálunk pl. a webkiszolgálók (igaz több is van belőlük), 1-4 processzormaggal és 2-4 Gb memóriával rendelkeznek. Míg a legkomolyabb SQL szerverünk 128 maggal, és 320 Gb memóriával rendelkezik.
Egy komolyabb programkód logika már néhány tíz konkurens felhasználónál kifekteti a webkiszolgálót, míg ugyanaz SQL szinten megvalósítva, mondjuk kisebb mint 5%-os processzorterhlést jelent az adatbázis szervernek, és emiatt szintén minimális terhet a webkiszolgálónak.
Én kérek elnézést!
-
martonx
veterán
válasz Fire/SOUL/CD #680 üzenetére
Tárold külső helyen a képeket.
Flickr, Picasa ad saját API-t is, azaz úgy tudod a honlapba beágyazni, mintha tényleg ott lennének a képek. Cserébe kevés tárhelyet adnak.
Skydrive nem ad saját API-t, csak simán linkel tudsz oda mutatni, viszont baromi jó képnézegetője van, és 25 Gb tárhelyet ad. Én egy óvodának több éve ide töltöm fel a képeit és még mindig csak néhány Gigabájtot foglalnak.
Én kérek elnézést!
-
martonx
veterán
Szia!
Lehet nagyon mezitlábas megközelítés, és komplett sql-t sem fogsz kapni tőlem, de gondolom azt le tudod gyűjteni, hogy kik 999-es user barátai?
Nos ha ez megvan, akkor:select k.helye from users u
inner join kép k on blablabla
where u.id not in (itt lesz a 999-es user barátainak legyűjtése, ami csak id-kat kell, hogy visszadjon)Ez lehet nem a leghatékonyabb módja a legyűjtésnek, de hacsak nem az iwiw-nél dolgozol, akkor így is elég gyorsan le kell futnia a lekérdezésednek.
Én kérek elnézést!
-
martonx
veterán
Én a következőt tenném, hogy biztosan jó legyen:
1. csinálnék egy alselectet, ami garantáltan csak a legfrissebb commenteseket fogja tartalmazni:
select topic_id, max(letrehozva) as letrehozva
from comments
group by topic_id2. majd az 1-es alselectemet joinolnám a topicoc-hoz:
select t.nev, t.id, c.letrehozva stb
inner join (ide jön az 1-es pont kódja) c on c.tid = t.id
order by c.letrehozvavalami ilyesmi lenne a végeredmény, és ez biztosan csak a legutolsó hozzászólásokat fogja neked kilistázni.
Én kérek elnézést!
-
martonx
veterán
válasz laracroft #717 üzenetére
Maga a lekérdezés is túlbonyolított.
1. Te egy darab táblát kérdezel le. Minek ehhez alselect? Illetve az alselect egész jónak tűnik, minek ehhez főselect???
2. Felesleges alakítgatni az account-ot, Line-t, ha karakteres, ha nem.Tehát az elgondolásod rossz volt, de az alselected nem reménytelen.
Én kérek elnézést!
-
martonx
veterán
Szia!
Nem tudsz funkciót megadni egy oszlop default értékének mysql-ben (ez mondjuk így 2012-ben elég tré, de a mysql legalább ingyenes).
Helyetted elolvastam az ide vonatkozó dokumentációt:
The DEFAULT clause specifies a default value for a column. With one exception, the default value must be a constant; it cannot be a function or an expression. This means, for example, that you cannot set the default for a date column to be the value of a function such as NOW() or CURRENT_DATE. The exception is that you can specify CURRENT_TIMESTAMP as the default for a TIMESTAMP column.
Szóval vagy insertnél töltöd fel a kalkulált értékkel,vagy egy triggert raksz az insert eseményre, és az töltögeti.
Én kérek elnézést!
-
martonx
veterán
válasz Sk8erPeter #736 üzenetére
A sima sql-es topikban meg ott van a másik emberünk a "csak admin tudjon módosítani egy mezőt" SQL szinten agymenésével. Hihetetlenek.
Én kérek elnézést!
-
martonx
veterán
hááát, ez meg így túl részletes. Azt hittem sikerülnöd fog kiemelni és konkretizálni a lényeget, de nem. Na nem baj, majd a prog.hu-s időmilliomosok hátha segítenek.
Viszont pár tanács:
Felesleges minden kapcsolótáblának id-t adnod primary key-ként. Ezzel rendesen keresztbe teszel az adatbáziskezelőnek, bár pár ezer adatsorokig nem fog feltűnni, hogy lassú lesz a lekérdezés.
Az evad_szeria-nak sincs semmi értelme. Adj a szeria tábládhoz egy év mezőt, és máris egyszerűsödött a képlet. A sokadik normálformákhoz ragaszkodni az iskolában lehet, a gyakorlatban pont a nálad látott szörny select-eket, és hosszas nyomozásokat okoz.Aztán látatlanban összevonnám a pont_qual és a pont_race táblákat is. Jelezve, hogy az most verseny vagy csak kvalifikáció volt, és a megfelelő qual_id-t, vagy race_id-t hozzákötve.
És még lehetne sorolni a felesleges túlkapásokat. Azt javaslom első körben tedd rendbe a DB sémádat, és utána egy normális áttekinthető egyszerű sémát valószínűleg te is hibátlanul le fogsz tudni kérdezni.
Én kérek elnézést!
-
martonx
veterán
1. akkor a join-ba tegyél még bele feltételt. Ha többször talál össze két sor, az vagy a db sémád hibája, vagy a join feltétel túl megengedő. Vagy ne a táblát join-old oda, hanem egy megfelelően megszűrt alselect-et).
2. amit írsz az evad_szeria-ról az a linkelt adatok, és a józan paraszti ész szerint sem követelnek meg egy teljesen felesleges táblát.
A helyedben továbbra is erősen újragondolnám a db-met, mert az egyes pont hibája is, mint mondtam jó eséllyel ide vezethető vissza.
Én kérek elnézést!
-
martonx
veterán
válasz Speeedfire #757 üzenetére
Hátha ez segít:
Ebből kimásolva egy példa:
ALTER TABLE tbl_name
ADD [CONSTRAINT [symbol]] FOREIGN KEY
[index_name] (index_col_name, ...)
REFERENCES tbl_name (index_col_name,...)
[ON DELETE reference_option]
[ON UPDATE reference_option]Én kérek elnézést!
-
-
martonx
veterán
Akkor most MS SQL? Mert annak nem 1433 a portja...
A hoszting cégek eléggé segítőkészek szoktak lenni, feltéve, hogy nem egy havi 200 Ft-os, vagy ingyenes csomagról van szó.
Ilyen pusztán technikai kérdésekben egy fórumban nem fogunk tudni segíteni, pláne, ha nem voltál rest és előtte utána jártál a témának. Azon őszintén meglepődnék, ha a vesszővel beírt portszám működne, bár ki tudja nem vagyok nagy PHP szaktekintély.Én kérek elnézést!
-
-
martonx
veterán
válasz pakriksz #790 üzenetére
ember, miért nem lehet értelmesen fogalmazni? Te egy ingyenes hosting szolgáltatást szeretnél mysql-el. Nos a jó hír, hogy ilyenekkel tele van az internet.
A rossz hír, hogy ha csak és kizárólag a mysql-t akarod használni, akkor azt csak localhost-ból engedélyezik.
Ha tényleg csak MySQL kell, akkor továbbra is azt mondom, hogy felhőből futtasd. Amazon RDS-re vethetnél egy pillantást. Ugyan nem sikerült a kalkulátorukat működésre bírnom (vagy tényleg ingyenes lenne, bármilyen extrém terhelés esetén is?), de szvsz nagyon pici pénzért lehet mysql-t felhőben hosztingolni.Én kérek elnézést!
-
martonx
veterán
hijnye ember te halmozottan hátrányos helyzetű vagy.
1. Ez itt egy MySQL topik
2. A dokumentációban végig MSSQL-ről van szó
3. Ennél betegebb helyre nem tudtad feltölteni a megosztando dokumentumot??? Manapság a felhők világában, egy ilyen elcseszett - döbbenet hogy még létező - fájl megosztó oldalt hogy lehet egyáltalán megtalálni?Mondjuk ez a harmadik pont elég szubjektív, de nekem azért is fizetned kellene, hogy egy ilyen helyről letöltsek egyáltalán bármit. Ennek ellenére letöltöttem, és az 1-2-es pontok ellentmondásánál gurultak el a gyógyszereim. Ha a fenti véleményem ellenére is kell segítség tőlem , akkor keress meg nyugodtan privátban
Bár erős a gyanúm, hogy távolról amúgy sem fogok tudni segíteni, mert akinek ez a leírás kínai, annak a windows távoli elérésének bekonfigurálása is elérhetetlen messzeségben van, ami viszont az érdemi segítség nyújtáshoz elengedhetetlen.Én kérek elnézést!
-
martonx
veterán
válasz Apollo17hu #819 üzenetére
amikor telepítetted a mysql-t, és nyomkodtad a next-et, volt egy olyan rész, hogy user, meg jelszó. Ez ha jól rémlik defaultban root és nincs hozzá jelszó. Illetve volt egy olyan rész is, hogy fusson-e szolgáltatásként a rendszerrel együtt a mysql, vagy mindig kézzel akarod indítgatni. Azt hiszem itt is a default, hogy fut a rendszerrel együtt.
A server meglepő módon gondolom localhost.Én kérek elnézést!
-
martonx
veterán
válasz Apollo17hu #822 üzenetére
Látod nem is volt nagy cucc beüzemelni. Ezért igazán kár volt a fórumban idétlenkedni. Ráadásul mint annyiszor, most is egy minimális guglizás megoldotta a dolgot.
Egyébként igen azt jelenti, hogy minden win induláskor a MySQL szerver is elindul a háttérben. Ez valamennyi erőforrást lefoglal. Egy régi P4-es celeron kb. használhatatlanná válik tőle, egy core i7-es 8Gb rammal meg észre sem veszi.
Én kérek elnézést!
-
martonx
veterán
válasz Speeedfire #841 üzenetére
Amit leírtál az a szabályos menet, és normalizálásnak hívják. Reméléem nem törtelek le, hogy nem találtad fel a spanyolviaszt.
Igen így szokták használni a klasszikus SQL-t, pont ezért is hívják Tranzakciós SQL-nek, nem pedig NoSQL-nek.Én kérek elnézést!
-
martonx
veterán
válasz Speeedfire #851 üzenetére
Sok mindent írtál. Az biztos, hogy ebben az esetben lesz egy select-ed, aminek lesz annyi join-ja, ahány mezőben használod a paraméter Id-jait.
Ez így csúnyának fog látszódni, pláne eg egy soros select * from tábla-hoz képest, de hidd el a TSQL-t nem fogja zavarni. Picit teljesítményben persze rosszabb egy select 40 join-nal, de ha abból a 40-ből mind a 40 ugyanannak a táblának ugyanaz a mezője, akkor nem vészes a dolog. Az SQL-ed viszont kevesebb memóriát, tárhelyet fog használni a normalizálásnak hála, ami hoszting cégek esetében előny.
Egy jótanács. Azért ne akarj mindent normalizálni. Pl. kezesség bal - jobb. Ezt egy sima bit mezővel elég megoldani, nem kell, hogy ehhez legyen két paramétered, mint 1 - bal, 2 - jobb.
Még egy jótanács, ha már normalizálunk, és táblát tervezünk. Ne int-ként, hanem tinyint, smallint ilyesmikként kezeld a mezőket. Ezzel további sok byte-ot lehet nyerni mezőnként. És úgy sincs több százezer választható opció egy adott mezőhöz.Én kérek elnézést!
-
martonx
veterán
válasz Speeedfire #853 üzenetére
Modellből visszafejtés nagyon nem szép megoldás. Ráadásul simán el tudok olyan helyzetet képzelni, mikor hátulról akarsz adatokat lekérni a DB-dből, és akkor hol van a PHP-s modelled? Szvsz gányolás.
Én kérek elnézést!
-
martonx
veterán
válasz Sk8erPeter #854 üzenetére
Lehet nem voltam elég érthető? Én arra a módszerre értettem a szabályosat, hogy van egy paraméter táblája, és ebből csak az ID-ket tárolja le ténylegesen. Ezért is írtam a normalizálásról, meg a Paraméter tábláról.
Én kérek elnézést!
-
martonx
veterán
-
martonx
veterán
A Mysql meg az INFORMATION_SCHEMA részeket még jó, hogy nem lehet törölni, mert ezek a Mysql saját belső működéséhez kellenek. Ezt még DB adminként se lehet törölni, még csak az kellene.
A phpmyadmin lassú és keveset tud és PHP-s webszerver kell hozzá. SQL-t tanulni bármi más jobb a phpmyadmin-nál (na jó az sql konzol ablakban még a PHPmyadmin-nál is reménytelenebb). Én a toad for Mysql-t ajánlom, de van kismillió normális MySQL GUI.Én kérek elnézést!
Új hozzászólás Aktív témák
- gban: Ingyen kellene, de tegnapra
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- Autós topik
- Láncfűrész topik
- iOS alkalmazások
- Milyen TV-t vegyek?
- Napelem
- Samsung Galaxy S23 Ultra - non plus ultra
- Itt az első kép a 2024-es Nokia 3210-ről
- További aktív témák...
- 512GB 2230 M.2 PCI-E NVME SSD BAZÁR - Samsung, Kingston, SK Hynix, Kioxia - STEAM DECK
- Új GAMER félgép - GIGABYTE B760 GAMING X + Intel I5 12400F + Crucial PRO 2x24GB DDR5 5600MHz
- Gigabyte B450M DS3H + Ryzen 7 2700X alaplap+processzor (nem ad képet)
- Eladó gamer PC (Ryzen 5 7600X/16GB DDR5/512GB SSD/RTX 4070 Super)
- Eladó gamer PC (i5-6500/16GB DDR4/120GB SSD+320GB HDD/GTX 1050Ti)