// MySql configuration.
MYSQL=1 // sphere'in mysql kullanımını aktif etmek için bu 1 olacak
MySqlHost=buraya mysqlin bulunduğu makinenin adresi
MySqlUser=kullanıcı adı
MySqlPassword=şifresi
MySqlDatabase=ve mysql de sphere için kullanacağınız database adı. Bu genelde size mysql'i sağlayan şirket tarafından verilir, yani bir uo serverı için aldığınız makinada mysql varsa hostu aldığınız şirket size veritabanı adınızı verir.
db.execute "create table test(isim text, killsayisi int, uid text)"
"db.execute", mysql'de işlem yapacağımız belirtiyoruz,
"create table test", test adında bir tablo oluştur,
"(isim text,", bu tabloda isim adında bir bölüm (kolon) oluştur ve bu kolona girilecek değerler text, yani string, diğer bi deyişle "a,b,c,d,.." gibi harf değerleri olsun.
", killsayisi int", killsayisi adında bir kolon oluştur ve bu kolona girilecek değerler int (integer), yani "1,2,3,4,.." gibi tamsayılar olsun.
", uid text)", uid adında bir kolon oluştur ve bu kolona girilecek değerler text olsun.
[function asdas]
db.execute "insert into test values ('Trina',55,'04ff')"
"insert into", yazarak bir tabloya veri girişi yapacağımızı belirtiyoruz,
"test", yazarak bilgileri yerleştireceğimiz tablo adını belirtiyoruz, burda bir önceki komutla yarattığımız test tablosunu kullandım.
"values ('Trina',55,'04ff')", burada da yarattığımız tablodaki kolonlara sırasıyla bilgileri giriyoruz.
db.execute "insert into test (killsayisi, uid) values (<kills>, '<uid>')"
db.execute "insert into test values ('Tolga',67,'05ad8')"
db.execute "update test set killsayisi=25"
db.execute "update test set killsayisi=55 where isim='Trina'"
db.execute "delete from test"
db.execute "delete from test where isim='Tolga'"
db.execute "select * from test"
[function test]
db.execute "select * from test"
for x 0 88
if !(<db.row.<dlocal.x>.isim>)
return 1
endif
sysmessage <db.row.<dlocal.x>.isim>
endfor
db.execute "select * from test", ile test tablosundan veri alacağımızı belirtiyoruz,
for x 0 88, yazarak 0 ve 88 arası satır uzunlukta sonuç çıkabileceğini belirtiyoruz, sonuçta oluşabilecek satır sayısı ne kadar fazlaysa 2. sayıyı (88) o kadar çok tutmanızda yarar var, çok olmasının bi zararı yok zaten eğer satırda birşey yoksa bir sonraki if döngüyü otomatik durduruyor.
if !(<db.row.<dlocal.x>.isim>), eğer <dlocal.x>. satırdaki isim kolonu boşsa.
return 1, döngüyü durdur.
endif, if i kapat
sysmessage <db.row.<dlocal.x>.isim>, gelen sonuçlardan <dlocal.x>. satırdaki isim kolonundaki bilgiyi sysmessage olarak yaz.
endfor, for'u kapat.
db.execute "select * from test" where killsayisi=25"
February 03, 2009
July 13, 2007
July 25, 2007
January 31, 2009
February 03, 2009
Ultima Online 7 hours önce
Sunucular 1 weeks önce
Sunucular 3 weeks önce
Sphere Scripting 3 weeks önce
Sunucular 1 months önce
Sunucular 2 months önce
Sunucular 2 months önce
Sunucular 2 months önce
June 30, 2017
June 24, 2017
June 22, 2017
June 18, 2017
June 03, 2017
May 28, 2017
May 09, 2017
March 31, 2017
Yorumlar (3)
İlk kez bir dökümanı 1 kerede anladım ellerine sağlık.
Bi düzeltme yapıyım: select kısmında [code] [function test] db.execute "select * from test" for x 0 88 if !(.isim>)
return 1
endif
sysmessage .isim>
endfor
[/code]
deki for yerine while kullanmak daha mantıklı, ayrıca execute değil query kullanılıyo selectte.
Yani:
[code]
[function test]
db.query "select * from test"
while (!>>)
sysmessage .isim>
endwhile
[/code]
:yes yararli bir dokuman