« 1 2 »
Autor Zpráva
Night
Profil *
Nevíte někdo jak položit dotaz na vypsání volného místa?
AM_
Profil
http://dev.mysql.com/doc/refman/5.1/en/show-table-status.html
Night
Profil *
A co mám špatně na tomhle? $resub = mysql_query("SELECT SUM(DATA_FREE) FROM $db_login;");
AM_
Profil
že v tabulce $db_login není sloupec data_free. Jinými slovy, takhle se to nedělá :)
AM_
Profil
jo v manuálu je to popsáno... to se nedotazuješ do tabulky, kde chceš volné místo, ale do information_schema, což je speciální databáze s metadaty tabulek.
nightfish
Profil
Night
když už, tak
SELECT    SUM(DATA_FREE)
    FROM  INFORMATION_SCHEMA.PARTITIONS
    WHERE TABLE_SCHEMA = 'mydb'
    AND   TABLE_NAME   = 'mytable';


kde za mydb a mytable doplníš název databáze a tabulky
Night
Profil *
To nefunguje
AM_
Profil
Night
To nefunguje
Zřejmě je to rozbité.

Promiň, ale při takovém popisu problému a ještě neschopnosti si přečíst manuál ti těžko kdo poradí. Když už to vůbec nezvládáš tak aspoň napiš chybu, kterou mysql vrátí (pokud jedeš přes PHP tak mysql_error()).
Night
Profil *
Unknown table 'PARTITIONS' in information_schema
Night
Profil *
$resub = mysql_query("SELECT SUM(DATA_FREE) FROM INFORMATION_SCHEMA.PARTITIONS
WHERE TABLE_SCHEMA = '$db_login' AND TABLE_NAME = 'pages'");
AM_
Profil
Aha, zřejmě nepoužíváš partitionované tabulky (sám nemám ponětí, co to je, ale v manuálu je tenhle příklad psaný pro ně).
Show table status příkaz, o kterém ten článek je, jsi nezkusil?
Night
Profil *
To jsem testnul taky,ale urco jsem to napsal blbe
Night
Profil *
Tohle mi nevypíše vůbec nic
$res = mysql_query("SHOW TABLE STATUS FROM $db_login;");
while($ar = mysql_fetch_array($res)) {
$subcashe = $ar["DATA_FREE"];
}
AM_
Profil
a mysql_error() po tom dotazu při tom vypíše co? to jsi nezkoušel?
Night
Profil *
Co takhle? Nějakej výsledek mi vyplivnul,ale nevim jestli je pravdivej. Hostuju na ic a nevim jakou dávaj velikost na mysql

$res = mysql_query("SHOW TABLE STATUS FROM $db_login;");
while($ar = @mysql_fetch_array($res)) {
$subcashe = $ar["DATA_FREE"] + $ar["Index_length"];
}
echo "Výsledek je: ".$subcashe;
Výsledek je: 2048
Night
Profil *
Kolik má ic.cz velikost na mysql?
AM_
Profil
- proč je tam ten zavináč? vyhoď ho
- proč je to ve while? když to vypíše jen jeden řádek
. dost dobře nerozumím, proč k volnému místu přičítáš délku indexu souboru
Night
Profil *
ve while protoze jinak mi to nic nevypise a bez indexu to samí
AM_
Profil
"Máme tam chybu, tak zkusíme přidat nějaké blafy, třeba to půjde". špatný přístup.
-data_free zobrazuje místo alokované, ale nevyužité (ne maximální kapacitu).
-Stačilo by si ten dotaz zobrazit v myAdminu a viděl bys co to vrací :)
-InnoDB free jde ve sloupci Comment ale je tam s tím i text, musíš si to vyparsovat. A stejně to imho není maximální místo databází využitelné.
- S tím while máš vlastně pravdu, zobrazí se to pro celou DB, ne pro tabulku, takže víc řádků. Ale ty subcashe bys měl spíš sčítat, ne pokaždé přiřadit znovu (tedy $subcashe +=)
Night
Profil *
-Stačilo by si ten dotaz zobrazit v myAdminu a viděl bys co to vrací :)

Vědět kde můžu testovat dotazy, tak to testuju
Night
Profil *
A neví někdo kde najdu kompletní kód? Přeci jenom dělat něco poprvé v hádankách se mi zdá úchylný
Night
Profil *
Po 7 hodinách na stejným místě když někde musí být uveřejněný kód.
AM_
Profil
stáhni a nainstaluj si phpMyAdmin (je to PHP aplikace pro spojení s databází). Pokud to spouštíš online na IC (a ne na vlastním webserveru), tak tam myAdmina mají na http://mysql.ic.cz
Night
Profil *
Hmm, to je pekny,ale kde tam najdu test dotazu??
AM_
Profil
karta SQL...
Jedna nicneříkající rada která tě asi moc nepotěší: vidím, že s MySQL začínáš, tak začni na jednoduchých věcech a nehroť hned analýzu tabulky :) pokud do DB necpeš enormní množství dat, tak to řešit nemusíš, vejde se toho tam docela hodně...
Night
Profil *
Budu tam mít toho právě hodně a chci mít status. Vždyt uz v zajmu hostingu je to aby to lidi vedeli a tak nekde musi bejt celej kod
Nox
Profil
Night
1) Podívej se na stránky IC nebo do administrace, jestli je tam psaný limit DB, případně googlem přes site, čili dát do googlu něco jako "site:www.ic.cz velikost databáze" (limit databáze atd.)
2) Pokud nenajdeš, zeptej se na jejich foru
3) Pak už se jen koukneš do phpMyAdminu, který tam jistě mají, kolik tvá db zabírá
=> vítězství
Night
Profil *
A nechce mi sem nekdo napsat dotaz pro blbi? Select????
Night
Profil *
Jakto ze pri data_free mi vypisuje 0?? Jsem si jistej ze uz to mam dobre,ale nechce mi vypsat vysledky
AM_
Profil
Protože data_free JE nula.
« 1 2 »
Toto téma je uzamčeno. Odpověď nelze zaslat.