- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Szólánc.
- eBay-es kütyük kis pénzért
- Luck Dragon: Asszociációs játék. :)
- Geri Bátyó: Agglegénykonyha – bevezető - igényfelmérés
- sziku69: Fűzzük össze a szavakat :)
- Őskoczka
- Magga: PLEX: multimédia az egész lakásban
- Eztis_Aztis: Hogyan tovább....
- gerner1
Új hozzászólás Aktív témák
-
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. -
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. -
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] -
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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. -
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!
-
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?
-
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
-
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?
-
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?
-
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 -
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?
Új hozzászólás Aktív témák
- Parkside szerszám kibeszélő
- ASZTALI GÉP / ALKATRÉSZ beárazás
- Poco F7 Pro - jó, de az amatőr sem rossz
- A kevés elérhető GPU miatt nem hoz saját GeForce RTX 5090-et a Noctua
- Battlefield 2042
- A fociról könnyedén, egy baráti társaságban
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Renault, Dacia topik
- Építő/felújító topik
- Milyen billentyűzetet vegyek?
- További aktív témák...
- Eladó Gigabyte Aorus RTX 3070 8GB /Jótállással!/Dobozos!/Posta ok!/Beszámítás!
- Garanciális Gamer Számítógép, PC (GTX 1660 Super, Ryzen 5 5500, 16GB RAM, SSD) Beszámítás! (39)
- Gamer Notebook! Csere-Beszámítás! Asus Rog Strix G531GU / I5 93300H / GTX 1660Ti / 16GB DDR4
- PlayStation 2 /Két karral!/Játékokkal!/Memórikártyával!/HDMI Átalakítóval!
- PS4 Slim
- Dell USB-C, Thunderbolt 3, TB3, TB4 dokkolók (K20A) WD19TB/ WD19TBS/ WD22TB4, (K16A) TB16/ TB18DC
- Bomba ár! Acer Aspire A515 - i5-8GEN I 8GB I 128GB SSD I 15,6" FHD I Nvidia 2GB I Cam I W11 I Gari!
- Bomba ár! Fujitsu LifeBook E744 - i7-4GEN I 16GB I 512SSD I 14" HD+ I DP I Cam I W10 I Garancia!
- Honor 90 512GB, Kártyafüggetlen, 1 Év Garanciával
- Új és régi konzolok Okosítása/Softmodoloása, és Szoftveres szintű javítása - RÉSZLETEK A LEÍRÁSBAN
Állásajánlatok
Cég: FOTC
Város: Budapest