Review Request 122783: Kexi queries/parser: make SUBSTR(X, Y [, Z]) built-in SQL function work

Jarosław Staniek staniek at kde.org
Fri Mar 6 20:48:42 GMT 2015



> On March 6, 2015, 9:33 p.m., Adam Pigg wrote:
> > libs/db/expression.cpp, line 1048
> > <https://git.reviewboard.kde.org/r/122783/diff/1/?file=352819#file352819line1048>
> >
> >     how about seperating this out into a seperate function, validateSubstr? by the time we implement more functions, thie will be massive

We indeed plan to do this but exact implementation will be known when work on functions taking completely different arguments, not just string,int,int. I even thought about a code generator because yes, the code will be massive and functional language such as SML would be better here ;)


- Jarosław


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/122783/#review77126
-----------------------------------------------------------


On March 3, 2015, 1:32 a.m., Jarosław Staniek wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/122783/
> -----------------------------------------------------------
> 
> (Updated March 3, 2015, 1:32 a.m.)
> 
> 
> Review request for Calligra, Andrius da Costa Ribas, Friedrich W. H. Kossebau, Adam Pigg, Roman Shtemberko, Radosław Wicik, and Wojciech Kosowicz.
> 
> 
> Bugs: 333206
>     http://bugs.kde.org/show_bug.cgi?id=333206
> 
> 
> Repository: calligra
> 
> 
> Description
> -------
> 
> Kexi queries/parser: make SUBSTR(X, Y [, Z]) built-in SQL function work
> 
> ** While reviewing please skip sqlparser.cpp and sqlparser.h -- these are generated files **
> 
> This is a first step to make lots of functions work.
> https://community.kde.org/Kexi/Plugins/Queries/SQL_Functions#Functions
> 
> For 2.9 the i18n() changes will be reverted, for master they will stay. The patch is against 2.9 for convenience of reviewers.
> 
> Details:
> - add a few convenience functions to BaseExpr
> - N-arg expressions: make token-to-string function support char tokens
> - add KexiDBExpr_ArgumentList class ID for N-arg expressions (,,,,)
> - FunctionExpr: compute type and validation for SUBSTR()
> - parser: also support empty arg list "()" in functions
> 
> 
> Diffs
> -----
> 
>   libs/db/expression.cpp dffae8132a3f8917fa4584633369a3a5cb5dd045 
>   libs/db/field.cpp 01ea956ef23ccd893dc9308031f6b422da2f79cf 
>   libs/db/parser/sqlparser.h b9b22cf308b994c6566e6fe524469d6e2ee2bf0b 
>   libs/db/parser/sqlparser.cpp e46a60d2171711a934d84bfb97fff2b8d63b749f 
>   libs/db/parser/sqlparser.y e8418a1210af8b3409cfe16e868c5c31b9908d8a 
>   libs/db/expression.h d283bf833a47e54bb21215a291183914dd53b04d 
> 
> Diff: https://git.reviewboard.kde.org/r/122783/diff/
> 
> 
> Testing
> -------
> 
> Tested queries such as "SELECT substr(name, 5) FROM t" with .kexi files and mysql/pgsql server connections.
> 
> 
> File Attachments
> ----------------
> 
> Detailed validation of types
>   https://git.reviewboard.kde.org/media/uploaded/files/2015/03/03/64bc365b-b2cd-4768-811c-745db8546351__kexi-2.9-query-subst.png
> 
> 
> Thanks,
> 
> Jarosław Staniek
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/calligra-devel/attachments/20150306/16b7b401/attachment.htm>


More information about the calligra-devel mailing list