- DatabaseOpen
- DatabaseClose
- DatabaseImport
- DatabaseExport
- DatabasePrint
- DatabaseTableExists
- DatabaseExecute
- DatabasePrepare
- DatabaseReset
- DatabaseBind
- DatabaseBindArray
- DatabaseRead
- DatabaseReadBind
- DatabaseFinalize
- DatabaseTransactionBegin
- DatabaseTransactionCommit
- DatabaseTransactionRollback
- DatabaseColumnsCount
- DatabaseColumnName
- DatabaseColumnType
- DatabaseColumnSize
- DatabaseColumnText
- DatabaseColumnInteger
- DatabaseColumnLong
- DatabaseColumnDouble
- DatabaseColumnBlob
Veritabanlarıyla çalışma
Veritabanlarıyla çalışma fonksiyonları popüler ve kullanımı kolay SQLite motorunu kullanır. Bu motorun önemli bir özelliği, tüm veritabanının kullanıcının bilgisayarında bulunan tek bir standart dosyaya yerleştirilmiş olmasıdır.
Fonksiyonlar, basit SQL istekleri kullanılarak tabloların kolayca oluşturulmasına, bunlara veri eklenmesine, değişiklik ve örnekleme yapılmasına olanak tanır:
- herhangi bir formattan işlem geçmişi ve kotasyon alma,
- optimizasyon ve sınama sonuçlarını kaydetme,
- diğer analiz paketleriyle veri hazırlama ve veri değişimi,
- MQL5 uygulama ayarlarını ve durumunu saklama.
Sorgular, istatistiksel ve matematiksel fonksiyonların kullanılmasına olanak sağlar.
Veritabanlarıyla çalışma fonksiyonları, büyük veri dizilerini işlemek için en çok yinelenen işlemlerin SQL istekleriyle değiştirilmesine olanak tanır; bu, birçok durumda karmaşık döngüler ve karşılaştırmaları programlamak yerine DatabaseExecute/DatabasePrepare çağrılarını kullanmanıza olanak sağlar. İstek sonuçlarını hazır bir yapı halinde kolayca elde etmek için DatabaseReadBind fonksiyonunu kullanın. Fonksiyon, tek bir çağrıda tüm kayıt alanlarının aynı anda okunmasına olanak sağlar.
Okuma, yazma ve değiştirme işlemlerini hızlandırmak için, veritabanı DATABASE_OPEN_MEMORY bayrağıyla RAM'de açılabilir/oluşturulabilir, ancak bu tür bir veritabanı yalnızca belirli bir uygulama tarafından kullanılabilir ve paylaşılmaz. Sabit diskte bulunan veritabanlarıyla çalışırken, toplu veri eklemeleri/değişiklikleri DatabaseTransactionBegin/DatabaseTransactionCommit/DatabaseTransactionRollback kullanılarak sarılmalıdır. Bu, işlemi yüzlerce kez hızlandırır.
Fonksiyonlarla çalışmaya başlamak için SQLite: MQL5'te SQL veritabanlarıyla yerel çalışma makalesini okuyun.
Fonksiyon |
Eylem |
---|---|
Belirtilen dosyada veritabanı açar veya oluşturur |
|
Veritabanını kapatır |
|
Verileri bir dosyadan tabloya aktarır |
|
Bir tablo veya SQL isteği yürütme sonucunu bir CSV dosyasına aktarır |
|
Uzman Danışmanlar günlüğüne bir tablo veya SQL isteği yürütme sonucu yazdırır |
|
Veritabanında tablonun varlığını kontrol eder |
|
Belirtilen veritabanına istek yürütür |
|
Daha sonra DatabaseRead() kullanılarak yürütülebilen bir istek tanıtıcı değeri oluşturur |
|
DatabasePrepare() çağrıldıktan sonra olduğu gibi isteği sıfırlar |
|
İstekte bir parametre değeri ayarlar |
|
Diziyi parametre değeri olarak ayarlar |
|
İstek sonucunda bir sonraki girdiye gider |
|
DatabasePrepare()'da oluşturulan isteği kaldırır |
|
İşlem yürütmeyi başlatır |
|
İşlem yürütmeyi tamamlar |
|
İşlemleri geri alır |
|
İstekteki alan sayısını elde eder |
|
Alan adını indekse göre elde eder |
|
Alan tipini indekse göre elde eder |
|
Alan boyutunu bayt cinsinden elde eder |
|
Alan değerini geçerli kayıttan dizge olarak elde eder |
|
Geçerli kayıttan int tipi değeri elde eder |
|
Geçerli kayıttan long tipi değeri elde eder |
|
Geçerli kayıttan double tipi değeri elde eder |
|
Alan değerini geçerli kayıttan dizi olarak elde eder |
- mode – mod
- median – medyan (50'nci persantil)
- percentile_25 – 25'inci persantil
- percentile_75
- percentile_90
- percentile_95
- percentile_99
- stddev or stddev_samp — örneklem standart sapması
- stddev_pop — popülasyon standart sapması
- variance or var_samp — örneklem varyansı
- var_pop — popülasyon varyansı
- acos(X) – radyan cinsinden arccos
- acosh(X) – hiperbolik arccos
- asin(X) – radyan cinsinden arcsin
- asinh(X) – hiperbolik arcsin
- atan(X) – radyan cinsinden arctan
- atan2(X,Y) – X/Y oranlı radyan cinsinden arctan
- atanh(X) – hiperbolik arctan
- ceil(X) – yukarıdaki en yakın tam sayıya yuvarlar
- ceiling(X) – yukarıdaki en yakın tam sayıya yuvarlar
- cos(X) – radyan cinsinden açının kosinüsü
- cosh(X) – hiperbolik kosinüs
- degrees(X) – radyanı açıya dönüştürür
- exp(X) – üs
- floor(X) – aşağıdaki en yakın tam sayıya yuvarlar
- ln(X) – doğal logaritma
- log(B,X) – belirtilen tabana göre logaritma
- log(X) – bayağı logaritma
- log10(X) – bayağı logaritma
- log2(X) – 2 tabanına göre logaritma
- mod(X,Y) – bölme işleminin kalanı
- pi() – yaklaşık Pi
- pow(X,Y) – belirtilen tabanı kuvvet yapar
- power(X,Y) – belirtilen tabanı kuvvet yapar
- radians(X) – açıyı radyana dönüştürür
- sin(X) – radyan cinsinden açının sinüsü
- sinh(X) – hiperbolik sinüs
- sqrt(X) – karekök
- tan(X) – radyan cinsinden açının tanjantı
- tanh(X) – hiperbolik tanjant
- trunc(X) – 0'a yakın olan tam sayıya kısaltır
Örnek:
select
|