You need to tell the SQL engine about your POJO. There are number of ways of 
doing that, but one example would be:
val cacheConfiguration = new CacheConfiguration[Integer,DataX]()
val valQE = new QueryEntity()
valQE.setKeyFieldName("key")
valQE.setKeyType("java.lang.Integer")
valQE.setValueType("DataX")
valQE.addQueryField("key", "java.lang.Integer", "key")
valQE.addQueryField("value","java.lang.String","value")
cacheConfiguration.setQueryEntities(java.util.Arrays.asList(valQE))
cacheConfiguration.setName("tdCache")
val dtCache = ignite.getOrCreateCache(cacheConfiguration)
Then the SQL will work:

0: jdbc:ignite:thin://127.0.0.1> select * from "tdCache".DATAX;
+--------------------------------+--------------------------------+
|              KEY               |             VALUE              |
+--------------------------------+--------------------------------+
| 1                              | Stephen                        |
+--------------------------------+--------------------------------+
1 row selected (0.02 seconds)
0: jdbc:ignite:thin://127.0.0.1> 


You can also use annotations, define this in XML or use a SQL CREATE TABLE 
statement.

Regards,
Stephen

> On 4 Nov 2019, at 01:35, BorisBelozerov <arsenal18...@gmail.com> wrote:
> 
> How can I insert data by sqlline.bat?
> I use class DataX:
> public class DataX {
>       private Integer key;
>       private String value;
>       public DataX(int key,String value) {
>               this.key=key;
>               this.value=value;
>       }
>       public int getKey() {
>               return key;
>       }
>       public void setKey(int key) {
>               this.key=key;
>       }
>       public String getValue() {
>               return value;
>       }
>       public void setValue(String value) {
>               this.value=value;                               
>       }
> }
> 
> and a cache named dtCache: 
> IgniteCache<Integer, DataX> dtCache=ignite.getOrCreateCache("dtCache");
> 
> 
> 
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Reply via email to