Support for quoted field names that are fully qualified e.g. "My View"."My Field" and GetRulesFromSQL

Hi, does the QueryBuilder supports SQL table/view/field names that are quoted? 

When I try to use GetRulesFromSQL and specify something like this for the where clause (which is valid sql)...

"Certificates"."Not After" = '1/25/2025 12:00:00 AM' and feed that into GetRulesFromSql, it fails with...

System.ArgumentOutOfRangeException: 'Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')'

Is this a known limitation?


5 Replies

YA YuvanShankar Arunagiri Syncfusion Team January 27, 2025 09:38 AM UTC

Hi Dave,


We have checked your reported query, and based on Query Builder architecture, it was supported only for the WHERE class condition of the SQL query.


SELECT * FROM "Certificates" WHERE FirstName = “David”;


And our Query builder GetSqlFromRules returns based on the query framed like below string.

“FirstName = ‘David’”


We didn’t support the SQL table with a field name like our share code.

"Certificates"."Not After" = '1/25/2025 12:00:00 AM'


If you pass any invalid format type of SQL string value to the query builder, then it will render with the wrong rules or throw an error. Kindly get and set the proper SQL WHERE class value for the query builder. If you have any concern about this query, kindly get back to us; we will check and provide the better solution.


Regards,

YuvanShankar A



DG Dave Gayler January 27, 2025 02:05 PM UTC

Hi, if I understand what you are saying...

The QueryBuilder does NOT allow for fully qualified fields names in the where clause with quotes?...


e.g.

SELECT * from "Certificates" WHERE "Certificates"."Not After" = ' 2025-01-25 00:00:00 '  (this is valid Postgres/ANSI SQL)

or 

SELECT * from [Certificates] WHERE [Not After] = ' 2025-01-25 00:00:00 ' (this is valid MS SQL)  


Are you saying you do NOT support spaces (usually handled with quotes or braces) in either Table/View names or  Field names?

The example you are providing with FirstName doesn't answer that question.

It appears the Query Builder is not actually parsing the information as SQL using a ANSI SQL parser. 

Is that correct? 

If so, please consider this a formal request to at least support ANSI SQL.



SM Star Med January 27, 2025 10:06 PM UTC

Great discussion! I'm curious if there's a workaround for the emoticon rendering bug introduced in this update. StarMed




DG Dave Gayler January 29, 2025 01:32 PM UTC

Any updates?



YA YuvanShankar Arunagiri Syncfusion Team January 30, 2025 11:06 AM UTC

Hi Dave,


Currently we don’t have space support for field names for SQL query in our Blazor Query Builder component. We have logged an improvement request for this feature. You can track the status of this feature by using the following feedback report link.


Feedback: https://www.syncfusion.com/feedback/65061/provide-the-space-support-for-field-names-of-sql-queries-of-the-query-builder


We regretfully can't start this feature's implementation immediately since we prioritized bug fixes and features that come before them in the queue for forthcoming releases. The time between releases is typically at least three months. Every release cycle, we assess all open features again during the planning phase and decide which ones to deploy based on a number of criteria, such as the product vision, technology viability, and user interest. The feedback will be moved to scheduled status with an estimated delivery period whenever we have more information to provide regarding the development of these improvements. We appreciate your patience until then.


Regards,

YuvanShankar A


Loader.
Up arrow icon