Hi Mike, If SQL indexes/configuration is set with the annotation and setIndexedTypes method then you have to use the type name (Cat in your case) as the SQL table name. It’s explained here: https://apacheignite-sql.readme.io/docs/schema-and-indexes#section-annotation-based-configuration <https://apacheignite-sql.readme.io/docs/schema-and-indexes#section-annotation-based-configuration>
The cache name is used for IgniteCache APIs and other related methods. — Denis > On Feb 8, 2018, at 3:48 PM, Williams, Michael > <michael.willi...@transamerica.com> wrote: > > Hi, > > Quick question, submitted a ticket earlier. How would I modify the below code > such that, when viewed through Sql (dbeaver, eg) it behaves as if it had been > created through a CREATE TABLE statement, where the name of the table was > catCache? I’m trying to directly populate a series of tables that will be > used downstream primarily through SQL. I’d like to be able to go into > dBeaver, browse the tables, and see 10 cats named Fluffy, if this is working > correctly. > import org.apache.ignite.cache.query.annotations.*; > import java.io <http://java.io/>.*; > > public class Cat implements Serializable { > @QuerySqlField > int legs; > @QuerySqlField > String name; > > Cat(int l, String n) > { > legs = l; > name = n; > } > } > > > import org.apache.ignite.Ignition; > import org.apache.ignite.Ignite; > import org.apache.ignite.IgniteCache; > import org.apache.ignite.cache.CacheMode; > import org.apache.ignite.configuration.CacheConfiguration; > import org.apache.ignite.cache.query.SqlFieldsQuery; > import org.apache.ignite.cache.query.QueryCursor; > import java.util.List; > public class Test { > public static void main(String[] args) > { > > Ignite ignite = Ignition.start(); > CacheConfiguration<Integer,Cat> cfg= new > CacheConfiguration("catCache"); > > cfg.setCacheMode(CacheMode.REPLICATED); > cfg.setSqlEscapeAll(true); > cfg.setSqlSchema("PUBLIC"); > cfg.setIndexedTypes(Integer.class,Cat.class); > try(IgniteCache<Integer, Cat> cache = > ignite.getOrCreateCache(cfg)) > { > for (int i = 0; i < 10; ++i) { > cache.put(i, new Cat(i + 1,"Fluffy")); > }/* > SqlFieldsQuery sql = new SqlFieldsQuery("select * from > catCache"); > try (QueryCursor<List<?>> cursor = cache.query(sql)) { > for (List<?> row : cursor) > System.out.println("cat=" + row.get(0)); > }*/ > } > System.out.print("Got It!"); > > }} > Thanks, > Mike Williams