Hello!

I don't think that you need to qualify functions with schema name. Please
try it verbatim. You can specify default schema in the connection string,
or alternatively try to do actual select from that table:
https://ignite.apache.org/docs/latest/SQL/JDBC/jdbc-driver

Regards,
-- 
Ilya Kasnacheev


пн, 21 дек. 2020 г. в 15:40, siva <[email protected]>:

> Hi,
> I have created and defined customsqlfunction
> IGNITE_HOME=apache-ignite-2.7.6-bin
> added Function jar at apache-ignite-2.7.6-bin\libs
>
> And added cache configuration in default-config
> <bean id="grid.cfg"
> class="org.apache.ignite.configuration.IgniteConfiguration">
>         <property name="cacheConfiguration">
>        <list>
>           <bean class="org.apache.ignite.configuration.CacheConfiguration">
>             <property name="name" value="MyTemplateFunction"/>
>             <property name="cacheMode" value="PARTITIONED" />
>             <property name="backups" value="1" />
>             <property name="sqlFunctionClasses"
> value="org.mycustomsqlfunction.MyCustomSQLFunction"/>
>           </bean>
>        </list>
>       </property>
>         </bean>
>
> And also added in .Net client and Server config files node like this
>     <property name="cacheConfiguration">
>       <list>
>         <bean class="org.apache.ignite.configuration.CacheConfiguration">
>           <property name="name" value="MyTemplateFunction"/>
>           <property name="cacheMode" value="PARTITIONED" />
>           <property name="backups" value="1" />
>           <property name="sqlFunctionClasses"
> value="org.mycustomsqlfunction.MyCustomSQLFunction"/>
>         </bean>
>       </list>
>     </property>
>
> *Java class file*
> package org.mycustomsqlfunction;
>
> import org.apache.ignite.cache.query.annotations.QuerySqlFunction;
>
> public class MyCustomSQLFunction {
>         @QuerySqlFunction
>     public static String Custom_Json_Value(String payload,String fieldName)
> {
>                 System.out.println(payload);
>                 System.out.println(fieldName);
>         return "Test";
>     }
> }
>
> But while running query getting error column not found:
>
> 0: jdbc:ignite:thin://127.0.0.1/> select
> "MyTemplateFunction".Custom_Json_Value("","");
> Error: Failed to parse query. Column  not found; SQL statement:
> select "MyTemplateFunction".Custom_Json_Value("","") [42122-197]
> (state=42000,code=1001)
> java.sql.SQLException: Failed to parse query. Column  not found; SQL
> statement:
> select "MyTemplateFunction".Custom_Json_Value("","") [42122-197]
>         at
>
> org.apache.ignite.internal.jdbc.thin.JdbcThinConnection.sendRequest(JdbcThinConnection.java:750)
>         at
>
> org.apache.ignite.internal.jdbc.thin.JdbcThinStatement.execute0(JdbcThinStatement.java:212)
>         at
>
> org.apache.ignite.internal.jdbc.thin.JdbcThinStatement.execute(JdbcThinStatement.java:475)
>         at sqlline.Commands.execute(Commands.java:823)
>         at sqlline.Commands.sql(Commands.java:733)
>         at sqlline.SqlLine.dispatch(SqlLine.java:795)
>         at sqlline.SqlLine.begin(SqlLine.java:668)
>         at sqlline.SqlLine.start(SqlLine.java:373)
>         at sqlline.SqlLine.main(SqlLine.java:265)
> 0: jdbc:ignite:thin://127.0.0.1/>
>
> what am i doing wrong.please help.
> Thanks.
>
>
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>

Reply via email to