mysql ile ilgili bir soru/sorun

2005-06-16 Thread sinan ,
selamlar herkese,
Debian sarge ve mysql Ver 12.22 Distrib 4.0.24 kullaniyorum.simdi sorun soyle ,
bi tablom var ve bunun icinde 2 sutun var. bu sutunlar sadece int
degeri alabiliyor.
bu tabloma soyle degerler giriyorum
1 1, 1 2, 1 4,1 3
sonra 
select * from tablo;
 sutun1  sutun2 
1   1
1   2
1   4
1   3
2   1
2   2
ondan sonra " alter table tablo order by sutun1, sutun2;  yazdigim
zaman istedigim sonucu elde ediyorum
yani soyle 
1 1, 1 2, 1 3, 1 4,2 1, 2 2, 2 3 gibi. fakat 1 3 `u, 1 5 yaptigim
zaman durum soyle oluyor
1 1, 1 2, 1 5, 1 4, 2 1, 2 2, 2 3 
ben tekrar "alter table tablo order by sutun1, sutun2; yaziyorum
duzeliyor fakat her degisiklik yaptigimda tekrar bu komutu girmek
zorunda kaliyorum.bunu default olarak nasi yaptirabiliriym yani tablo
sorgulamasinda once sutun1 i siralicak sonrada sutun2 yi.



Re: mysql ile ilgili bir soru/sorun

2005-06-16 Thread Emre Sevinç




sinan , wrote:

  Debian sarge ve mysql Ver 12.22 Distrib 4.0.24 kullaniyorum.simdi sorun soyle ,
bi tablom var ve bunun icinde 2 sutun var. bu sutunlar sadece int
degeri alabiliyor.
bu tabloma soyle degerler giriyorum
1 1, 1 2, 1 4,1 3
sonra 
select * from tablo;
 sutun1  sutun2 
1   1
1   2
1   4
1   3
2   1
2   2
ondan sonra " alter table tablo order by sutun1, sutun2;  yazdigim
zaman istedigim sonucu elde ediyorum
yani soyle 
1 1, 1 2, 1 3, 1 4,2 1, 2 2, 2 3 gibi. fakat 1 3 `u, 1 5 yaptigim
zaman durum soyle oluyor
1 1, 1 2, 1 5, 1 4, 2 1, 2 2, 2 3 
ben tekrar "alter table tablo order by sutun1, sutun2; yaziyorum
duzeliyor fakat her degisiklik yaptigimda tekrar bu komutu girmek
zorunda kaliyorum.bunu default olarak nasi yaptirabiliriym yani tablo
sorgulamasinda once sutun1 i siralicak sonrada sutun2 yi.


Konu Debian'in kendisinden ziyade SQL standartlari ile alakali gibi;
kafa karisikligimi
mazur görün, daha ziyade MS SQL Server ile ugrasan bir programciyim
ancak neden sürekli
"alter table..." dediginizi anlamadim. Yani tablonun yapisini neden
degistirmeye calisiyorsunuz?

Önce birinci, sonra da ikinci sütuna göre artan siralama isterseniz:

SELECT sutun1, sutun2
FROM tablo
ORDER BY sutun1, sutun2

demek size istediginiz sirali ciktiyi (yani 1. sütun kendi icinde ve
buna bagli olarak 2. sütun
da 1. sütun grubu icinde sirali) getirmiyor mu?


-- 
Emre Sevinç
eMBA Yazılım Geliştirme
İstanbul Bilgi Üniversitesi

 




Re: mysql ile ilgili bir soru/sorun

2005-06-16 Thread sinan ,
evet dogru anlamissiniz fakat ben mevcut fonksiyonlarima bu eklentiyi
yapmak istemiyorum, mesela phpmyadmin den listeledigim zaman ne kadar
degistirsemde gene sutun1,sutun2 sirasina gore dizilmesini istiyorum
cunku fonksiyonlarimin sorgulamalarida bu siraya gore geliyor, ve ben
sutun2 de herhangi bi sekilde degisiklik yaptigimda tekrar yukardaki
"alter table . . . " komutunu girmez isem sutun1,sutun2 seklinde
siralamiyor.
tesekkurler.



Re: mysql ile ilgili bir soru/sorun

2005-06-16 Thread Emre Sevinç





sinan , wrote:

  evet dogru anlamissiniz fakat ben mevcut fonksiyonlarima bu eklentiyi
yapmak istemiyorum, mesela phpmyadmin den listeledigim zaman ne kadar
degistirsemde gene sutun1,sutun2 sirasina gore dizilmesini istiyorum


Veritabani tasarimi acisindan yapmaya calistiginiz seyi pek hayirli
bulmadigimi belirtmeme
izin verin lütfen. Böyle bir seyi istemenizin özel bir sebebi mi var?
Yani bu isi SQL sorgusuna
havale ettirmek yerine tabloda yapisal bir seylere girismek
istiyorsunuz gördügüm kadari
ile ve bunun sebebi de baska bir dilde, misal PHP, yazdiginiz ve
degistirmek istemediginiz
binlerce fonksiyon mu? Böyle bir sey mi var? 

Bu gibi isler icin "view" kullanmak daha anlamlidir. View'lar tipki
birer tablo gibi, misal
üzerinde "SELECT * FROM view-ismi" türünden komutlar
calistirabileceginiz veritabani
nesneleridir ancak view'ün arkasinda cok karmasik sorgular yer alabilir
(JOIN'li, ORDER'li, GROUP BY'li
vs.). Böyle bir sey isinizi görmez mi?


  
cunku fonksiyonlarimin sorgulamalarida bu siraya gore geliyor, ve ben
sutun2 de herhangi bi sekilde degisiklik yaptigimda tekrar yukardaki
"alter table . . . " komutunu girmez isem sutun1,sutun2 seklinde
siralamiyor.


Ben derim ki tabloya o sekilde garip bir müdahalede bulunmayin.
Veritabani tablosu dedigimiz
sey o yapmaya calistiginiz is icin uygun bir yapi gibi gelmiyor bana,
"view" daha uygun bu is
icin. MySQL'de "CREATE VIEW..." gibi bir sey var mi? Böylece "tablo"
dediginiz seyin
ismini "asil-tablo" diye degistirir ve "view"unuzun ismini de "tablo"
koyarsiniz, ve o view da
"SELECT sutun1, sutun2 FROM tablo" seklinde bir sorgunun sonucu olan
tablo olarak görünür
ve belki bu islerinizi biraz cözer.

Ne dersiniz?



-- 
Emre Sevinç
eMBA Yazılım Geliştirme
İstanbul Bilgi Üniversitesi

 




Re: mysql ile ilgili bir soru/sorun

2005-06-16 Thread sinan ,
olabilir tabi ama benim icin onemli olan su anki php fonksiyonlarimin
istedigim sekilde  sirali gelmesi view konusunda bilgim olmadigi icin
onun yerine fonksiyonlarimi degistirmeye baslicagim sanirim, hmm
aslinda binlerce yok ama onlarca var diyebilirim :/
tesekkur ederim yardimlariniz icin.



Re: mysql ile ilgili bir soru/sorun

2005-06-16 Thread Emre Sevinç




sinan , wrote:

  olabilir tabi ama benim icin onemli olan su anki php fonksiyonlarimin
istedigim sekilde  sirali gelmesi view konusunda bilgim olmadigi icin
onun yerine fonksiyonlarimi degistirmeye baslicagim sanirim, hmm
aslinda binlerce yok ama onlarca var diyebilirim :/


GNU/Linux üzerinde calisan biri icin herhalde dosyalari actirip, ...
FROM tablo"
kismini bulup dibine ORDER BY sutun1, sutun2" ekletmek zor olmasa gerek.

Öte yandan önerdigim "view" cözümünün cok daha acisiz ve zahmetsiz
oldugunu
düsünüyor ve $u adresi öneriyorum:

http://dev.mysql.com/doc/mysql/en/create-view.html

Bu arada MySQL sistemini hangi kitaptan calisiyorsunuz? Konuyla ilgili
düzgün
bir kitapta "view"dan mutlaka bahseder diye düsünüyorum.

Iyi calismalar,

-- 
Emre Sevinç
eMBA Yazılım Geliştirme
İstanbul Bilgi Üniversitesi

 




Re: mysql ile ilgili bir soru/sorun

2005-06-16 Thread sinan ,
su an elimin altinda olan kitap o`reilly nin mysql & msql isimli
kitabi, acikcasi view la ilgili olarak kitabi acip bakmadim, kisa
zamanda cozum gerekti onuda fonksiyonlari tekrar duzelterek yaptim,
dediginiz gibi gnu/linux`de calisan birisi icin cok zahmetli bi is
degilmis, zaten oyle gozukuyordu ;)