SQL užklausos online: Skirtumas tarp puslapio versijų

Iš PHP, MySQL.
Peršokti į: navigaciją, paiešką
 
(nerodoma 39 tarpinės versijos, sukurtos to paties naudotojo)
1 eilutė: 1 eilutė:
Šis įrankis skirtas norintiems išbandyti kaip veikia SQL užklausos MySQL duomenų bazėje.
+
[[Vaizdas:World schema.png|right|thumb|border]]
 +
<div style="border:1px solid green;background-color:#99FF99;padding:7px;">Adresas: [http://www.mysql.lt/irankiai/world http://www.mysql.lt/irankiai/world]</div>
  
[http://www.mysql.lt/irankiai/world http://www.mysql.lt/irankiai/world]
 
  
Šiuo metu įrankis yra kurimo/testavimo stadijoje. Komentarai/pastabos welcome :) (galima ir mailu[mailto:minde@mysql.lt])
+
<div style="border:1px solid red;background-color:#FF9999;padding:7px;">'''''Šiuo metu įrankis yra kūrimo/testavimo stadijoje. Komentarai/pastabos/klaidos/etc labai sveikintini ir laukiami.
 
+
Visą informaciją galima ir siųsti: [mailto:minde@mysql.lt minde@mysql.lt].
TODO:
+
Arba registruotis šiame vikyje (wiki) ir rašyti į "aptarimas" skiltį.'''''</div>
* Pridėti galimybę naudotis netik World duomenų baze bet ir populiariomis Sakila bei Manegerie;
+
Šis įrankis skirtas:
* Pridėti visų duomenų bazių schemų vizualizacijas;
+
* norintiems išbandyti kaip veikia [[SQL]] užklausos [[MySQL]] duomenų bazėje;
* Parašyti paaiškinimus dėl INFORMATION_SCHEMA duomenų bazės;
+
* norintiems pateikti [[SQL]] užklausos pavyzdį su rezultatais kitiems interneto vartotojams (nuorodos pagalba);
* Spręsti šiukšlinimo/db valymo problemas (automatinis db regenervimas kas kažkiek laiko, captcha, registruoti vartotojai);
+
==Kaip naudotis==
* Padaryti užklausų log'ą, su galimybe išsaugoti užklausą kaip nuorodą (kad būtų galima dalintis nuorodomis ir pan.);
+
Įrankis yra labai paprastas ir dažnam naudotojui užteks užmesti akį, kad suprastų kaip viskas veikia. Užklausos lange yra rašomos SQL užklausos, kurios vykdomos MySQL duomenų bazėje paspaudus mygtuką "Vykdyti". Jeigu įvykžius užklausą buvo gauti kokie nors rezultatai, tai jie atvaizduojami lentelės forma po užklausos lauku. Siekiant išvengti didelių ir nereikalingų duomenų srautų šiuo metu yra rodoma tik 100 rezultato eilučių - visa kita nukerpama. Šiuo metu užklausos vykdomos [[World duomenų bazė|"World" duomenų bazėje]].
* Parašyti keletą pavyždžių su JOIN'ais, paieška, WHERE sąlygom ir pan.;
+
==Apribojimai==
 
+
* Duomenų bazėje galima vykdyti tik ''SELECT'' užklausas (''INSERT'', ''UPDATE'' yra uždraustos);
Problemos:
+
* Rezultatų lentelėje bus rodomi tik 100 pirmų rezultatų. Manau, kad mokymosi tikslams tai yra daugiau nei pakankama. Taip pat visada tolimesnius rezultatus galima pamatyti pasinaudojus LIMIT operatoriumi;
* Kadangi viskas hostinama ant serveriai.lt shared hostingo tai neįmanoma pilnai uždrausti visų SQL komandų. Realiai šiuo metu veikia: SELECT, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE. Kitaip sakant vartotojai gali kurti selectinti, kurti viewsus bei procedūras.
+
* Užklausa negali viršyti 64kB.
 +
==Pavyzdžiai==
 +
Pažiūrėti kokios yra prieinamos duomenų bazės:
 +
{{world|a2cd5ae8578af527073cade9bfaa92c8|sql_show_databases}}
 +
Pažiūrėti kokios yra aktyvios duomenų bazės lentelės:
 +
{{world|4e7bf90950ba44427a533862175b56d0|sql_show tables}}
 +
Gauti lentelės "City" duomenis:
 +
{{world|9b5d4818a614fe8dede37a6f6fdfcc9e|sql_select_all_from_city}}
 +
Gauti duomenų bazėje esančių Lietuvos miestų sąrašą:
 +
{{world|b146f7e23d3d03c2d8255aeedd40271a|sql_lietuvos_miestai}}

Dabartinė 14:34, 22 Rugsėjo 2008 versija

World schema.png


Šiuo metu įrankis yra kūrimo/testavimo stadijoje. Komentarai/pastabos/klaidos/etc labai sveikintini ir laukiami.

Visą informaciją galima ir siųsti: minde@mysql.lt.

Arba registruotis šiame vikyje (wiki) ir rašyti į "aptarimas" skiltį.

Šis įrankis skirtas:

  • norintiems išbandyti kaip veikia SQL užklausos MySQL duomenų bazėje;
  • norintiems pateikti SQL užklausos pavyzdį su rezultatais kitiems interneto vartotojams (nuorodos pagalba);

Kaip naudotis

Įrankis yra labai paprastas ir dažnam naudotojui užteks užmesti akį, kad suprastų kaip viskas veikia. Užklausos lange yra rašomos SQL užklausos, kurios vykdomos MySQL duomenų bazėje paspaudus mygtuką "Vykdyti". Jeigu įvykžius užklausą buvo gauti kokie nors rezultatai, tai jie atvaizduojami lentelės forma po užklausos lauku. Siekiant išvengti didelių ir nereikalingų duomenų srautų šiuo metu yra rodoma tik 100 rezultato eilučių - visa kita nukerpama. Šiuo metu užklausos vykdomos "World" duomenų bazėje.

Apribojimai

  • Duomenų bazėje galima vykdyti tik SELECT užklausas (INSERT, UPDATE yra uždraustos);
  • Rezultatų lentelėje bus rodomi tik 100 pirmų rezultatų. Manau, kad mokymosi tikslams tai yra daugiau nei pakankama. Taip pat visada tolimesnius rezultatus galima pamatyti pasinaudojus LIMIT operatoriumi;
  • Užklausa negali viršyti 64kB.

Pavyzdžiai

Pažiūrėti kokios yra prieinamos duomenų bazės:

SHOW DATABASES

Pažiūrėti kokios yra aktyvios duomenų bazės lentelės:

SHOW TABLES

Gauti lentelės "City" duomenis:

SELECT * FROM City

Gauti duomenų bazėje esančių Lietuvos miestų sąrašą:

SELECT Country.Name AS CountryName,
   City.Name,
   City.Population
FROM City
   INNER JOIN Country ON City.CountryCode = Country.Code
WHERE CountryCode = "LTU"