SQL: Malsamoj inter versioj

67 bitokojn aldonis ,  antaŭ 5 jaroj
rearanĝo de la kategorioj de komandoj; kompletigo de frazoj; forigis la titolojn de kvara nivelo
(informkesto programlingvo kun informoj de la anglalingva vikipedio)
(rearanĝo de la kategorioj de komandoj; kompletigo de frazoj; forigis la titolojn de kvara nivelo)
 
La komandojn oni partigas en tri kategoriojn:
 
=== Datumdifino ===
 
====La Komandojkomandoj por datumdifino: estas ''CREATE'', ''ALTER,'' DROPkaj ====''DROP''.
 
* <code>CREATE TABLE adresoj (nomo VARCHAR(30), antnomo VARCHAR(40))</code>
:kreuKreu novan tabelon nomatan ''adresoj'' kun la kolumnoj ''nomo'' kaj ''antnomo'', kiuj povas enhavi tekstojn ĝis 30 (aŭ 40) literojn longajn.
 
* <code>ALTER TABLE adresoj ADD COLUMN urbo VARCHAR(30)</code>
:aldonuAldonu kolumnon ''urbo'' al la tabelo ''adresoj''.
 
* <code>DROP TABLE adresoj</code>
:foriguForigu la tutan tabelon ''adresoj''.
 
* <code>CREATE INDEX indekso_nomo ON adresoj (nomo)</code>
:kreuKreu [[datumbaza indekso|indekson]] nomata ''indekso_nomo'' por la tabelo ''adresoj'' kiu enhavu la liniojn ordigitaj laŭ ''nomo''.
 
* <code>DROP INDEX indekso_nomo</code>
:foriguForigu la indekson ''indekso_nomo''.
 
 
=== Datummanipulado ===
 
La komando por serĉmendi estas ''SELECT''.
==== Komandoj por mendi: SELECT ====
 
* <code>SELECT * FROM adresoj WHERE nomo='Schmidt'</code>
:montruMontru ĉiujn kolumnojn el la tabelo ''adresoj'', kies kolumno ''nomo'' egalas al ''Schmidt''.
 
* <code>SELECT nomo FROM adresoj ORDER BY nomo</code>
:montruMontru la kolumnon ''nomo'' de ĉiuj linioj en la tabelo ''adresoj'', kaj ordigu ilin laŭ ''nomo''.
 
* <code>SELECT COUNT(*) AS nombro_de_adresoj FROM adresoj</code>
:montruMontru la nombron de linioj en ''adresoj'' kaj nomu la rezultkolumnon ''nombro_de_adresoj''.
 
* <code>SELECT nomo,COUNT(nomo) FROM adresoj GROUP BY nomo</code>
:montruMontru ĉiujn unikajn nomojn kune kun iliaj nombroj.
 
====La Komandojkomandoj por ŝanĝi: datumojn estas ''INSERT'', ''UPDATE,'' DELETEkaj ====''DELETE''.
 
* <code>INSERT INTO adresoj (nomo,antnomo,urbo) VALUES ('Schmidt','Philipp','Hamburg')</code>
:aldonuAldonu linion kies kolumnoj ''nomo'', ''antnomo'', kaj ''urbo'' havas la valorojn montratajn en la tabelon ''adresoj''.
 
* <code>UPDATE adresoj SET urbo='Berlin' WHERE nomo='Schmidt'</code>
:ŝanĝuŜanĝu la kolumnon ''urbo'' de ĉiu linio, kies kolumno ''nomo'' egalas al ''Schmidt''.
 
* <code>DELETE FROM adresoj WHERE urbo!='London'</code>
:foriguForigu el la tabelo ĉiujn liniojn, kies kolumno ''urbo'' malegalas al ''London''.
 
* <code>DELETE FROM adresoj</code>
:foriguForigu ĉiujn liniojn el la tabelo ''adresoj''.
 
=== Datumdifino ===
 
==== Komandoj por datumdifino: CREATE, ALTER, DROP ====
 
* <code>CREATE TABLE adresoj (nomo VARCHAR(30), antnomo VARCHAR(40))</code>
:kreu novan tabelon nomatan ''adresoj'' kun la kolumnoj ''nomo'' kaj ''antnomo'', kiuj povas enhavi tekstojn ĝis 30 (aŭ 40) literojn longajn
 
* <code>ALTER TABLE adresoj ADD COLUMN urbo VARCHAR(30)</code>
:aldonu kolumnon ''urbo'' al la tabelo ''adresoj''
 
* <code>DROP TABLE adresoj</code>
:forigu la tutan tabelon ''adresoj''
 
* <code>CREATE INDEX indekso_nomo ON adresoj (nomo)</code>
:kreu [[datumbaza indekso|indekson]] nomata ''indekso_nomo'' por la tabelo ''adresoj'' kiu enhavu la liniojn ordigitaj laŭ ''nomo''
 
* <code>DROP INDEX indekso_nomo</code>
:forigu la indekson ''indekso_nomo''
 
=== Datumkontrolo ===
 
====La Komandojkomandoj porde datumkontrolo: estas ''GRANT,'' REVOKEkaj ====''REVOKE''.
 
* <code>GRANT SELECT,UPDATE ON TABLE adresoj TO karlo</code>
:rajtiguRajtigu la uzanton ''karlo'' fari mendojn kaj ŝanĝi ekzistantajn liniojn.
 
* <code>REVOKE ALL ON TABLE adresoj FROM alia_uzanto</code>
:malpermesuMalpermesu ĉiujn komandojn al la uzanto ''alia_uzanto''.
 
== SQL-Datumbazoj ==
 
== Eksteraj ligiloj ==
* [http://troels.arvin.dk/db/rdbms/ Comparison of Different SQL Implementations] la komparo diversajn SQL efektiviĝojn: SQL:2008, PostgreSQL, DB2, MS SQL Server, MySQL, Oracle kaj Informix ({{ref-en}})
 
== Vidu ankaŭ ==
1 714

redaktoj