4 Ekim 2021 Pazartesi

SqlFieldsQuery Sınıfı - Thick Client

Giriş
Şu satırı dahil ederiz
import org.apache.ignite.cache.query.SqlFieldsQuery;
SQL çalıştırmak içindir. Açıklaması şöyle
The SqlFieldsQuery class is an interface for executing SQL statements and navigating through the results. SqlFieldsQuery is executed through the IgniteCache.query(SqlFieldsQuery) method, which returns a query cursor.
constructor
Örnek - Insert
Şöyle yaparız. 
Ignite ignite = ...
IgniteCache<Integer, String> cache = ignite.getOrCreateCache("MYSCHEMA.FOO_PROPERTIES");
SqlFieldsQuery sql = new SqlFieldsQuery("INSERT INTO MYSCHEMA.FOO_PROPERTIES (key,value)
  VALUES ('foo','bar')");
cache.query(sql);
Burada kullanılan schema SQL cümlesi içinde veriliyor. Şöyle de yapılabilir
new SqlFieldsQuery("select name from City").setSchema("PERSON");
Örnek - Select
Şöyle yaparız
SqlFieldsQuery sql = new SqlFieldsQuery(
  "select name from Employee where isEmployed = 'true'");
Örnek - Select
Şöyle yaparız
Ignite ignite = ...;
IgniteCache<PersonKey, Person> cache = ...;

List<List<?>> result = cache.query(
new SqlFieldsQuery("SELECT * FROM PERSON WHERE PERSONID = 9000")).getAll();
Örnek - Select
Şöyle yaparız
IgniteCache<Integer, Employee> cache = ignite.cache("baeldungCache");

SqlFieldsQuery sql = new SqlFieldsQuery(
  "select name from Employee where isEmployed = 'true'");

QueryCursor<List<?>> cursor = cache.query(sql);

for (List<?> row : cursor) {
  // do something with the row
}
setDistributedJoins metodu
Allow non-collocated joins anlamına gelir.

setSchema metodu
Insert, update gibi işlemlerde kullanılacak schema SQL içinde belirtileceği gibi bu metod ile de belirtilebilir.

Hiç yorum yok:

Yorum Gönder

Ignite Transaction Kullanımı

Giriş Bir tablo 3 tane atomicity değerinden birisine sahip olabilir. 1. ATOMIC 2. TRANSACTIONAL 3. TRANSACTIONAL_SNAPSHOT ATOMIC Açıklaması ...