Re: [sqlite] performing an UPDATE on a table-valued function

2017-04-19 Thread Timothy Stack
On Sun, Apr 16, 2017 at 3:40 PM, Richard Hipp <d...@sqlite.org> wrote:

> > On 16 Apr 2017, at 10:57pm, Timothy Stack <timothyshanest...@gmail.com>
> > wrote:
> >
> >>  UPDATE foo SET col0 = 'bar' WHERE hidden_field = 'baz'
> >>
> >> Having the real syntax, like the following, would be nice though:
> >>
> >>  UPDATE foo('baz') SET col0 = 'bar'
>
> Whether or not the suggest is a good idea is a different matter.  I'm
> skeptical.  A function is typically not an l-value and is hence not
> typically something that can be modified.


​Richard, if I made the necessary changes to the parser, docs, and updated
the carray extension as an example, would you accept the patch?

thanks,

tim​


> --
> D. Richard Hipp
> d...@sqlite.org
> ___
> sqlite-users mailing list
> sqlite-users@mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>
___
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] performing an UPDATE on a table-valued function

2017-04-18 Thread Timothy Stack
On Tue, Apr 18, 2017 at 12:04 AM, Hick Gunter <h...@scigames.at> wrote:

> A TVF is just a "calling convention" for abbreviating a specific SELECT on
> a virtual table. It implies neither mutability of the returned values, nor
> persistence beyond the scope of the statement. Indeed the carray() example
> you give later is an eponymous ephemeral table, i.e. it does not require a
> CREATE VIRTUAL TABLE statement, but springs into existence by virtue of
> being mentioned (technically: it is created in the xFilter method) and
> "evaporates" when the cursor is closed.
>

​Yes, I'm aware of this and have implemented table-valued functions and
many other SQLite extensions.  I understand how things work.  I raise
the question because it seems possible in other SQL languages[1][2].
And, to me at least, it makes logical sense (hence the carray example).

If you want a mutable, persistent non-native table, then please document
> this fact by executing a CREATE VIRTUAL TABLE statement.
>

​I'm ​not sure what you're saying here.  I'm asking for the SQLite syntax
to be changed to support table-valued functions for INSERT/UPDATE
statements.

​tim​

[1] - http://sqlblog.com/blogs/greg_low/archive/2011/05/22/
update-against-a-table-valued-function-when-declared-inline.aspx
​[2] - http://stackoverflow.com/questions/16568454/is-a-table-
valued-function-updatable
​

-Ursprüngliche Nachricht-
> Von: sqlite-users [mailto:sqlite-users-boun...@mailinglists.sqlite.org]
> Im Auftrag von Timothy Stack
> Gesendet: Sonntag, 16. April 2017 23:57
> An: SQLite mailing list <sqlite-users@mailinglists.sqlite.org>
> Betreff: [sqlite] performing an UPDATE on a table-valued function
>
> The current table-valued function feature seems to only work for SELECT
> statements.  Was any thought given to whether updates would be supported
> for table-valued functions?  It seems like it's technically possible and
> could be made to work right now with this awkward syntax:
>
>   UPDATE foo SET col0 = 'bar' WHERE hidden_field = 'baz'
>
> Having the real syntax, like the following, would be nice though:
>
>   UPDATE foo('baz') SET col0 = 'bar'
>
> thanks,
>
> tim stack
> ___
> sqlite-users mailing list
> sqlite-users@mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>
>
> ___
>  Gunter Hick
> Software Engineer
> Scientific Games International GmbH
> FN 157284 a, HG Wien
> Klitschgasse 2-4, A-1130 Vienna, Austria
> Tel: +43 1 80100 0
> E-Mail: h...@scigames.at
>
> This communication (including any attachments) is intended for the use of
> the intended recipient(s) only and may contain information that is
> confidential, privileged or legally protected. Any unauthorized use or
> dissemination of this communication is strictly prohibited. If you have
> received this communication in error, please immediately notify the sender
> by return e-mail message and delete all copies of the original
> communication. Thank you for your cooperation.
>
>
> ___
> sqlite-users mailing list
> sqlite-users@mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>
___
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] performing an UPDATE on a table-valued function

2017-04-16 Thread Timothy Stack
On Sun, Apr 16, 2017 at 3:40 PM, Richard Hipp <d...@sqlite.org> wrote:

> On 4/16/17, Simon Slavin <slav...@bigfraud.org> wrote:
> >
> > On 16 Apr 2017, at 10:57pm, Timothy Stack <timothyshanest...@gmail.com>
> > wrote:
> >
> >>  UPDATE foo SET col0 = 'bar' WHERE hidden_field = 'baz'
> >>
> >> Having the real syntax, like the following, would be nice though:
> >>
> >>  UPDATE foo('baz') SET col0 = 'bar'
> >
> > How would it know that 'baz' is a value for the column "hidden_field"
> rather
> > than some other column ?
>
> Table-valued functions are just virtual tables that allow parameters
> to be used as constraints against the "hidden" columns of the virtual
> table.  The parameters match in order.  The first parameter matches
> against the first hidden column, and the second parameter matches
> against the second hidden column, and so forth.
>
> That is, I'm guessing, what the OP means.
>

​Yes, that is what I mean.​

Whether or not the suggest is a good idea is a different matter.  I'm
> skeptical.  A function is typically not an l-value and is hence not
> ​​
> typically something that can be modified.
>

​Let's take the 'carray' extension[1] as an example​.  If I can read from
an array in memory with the following statement:

  SELECT * FROM carray(0x7b3830, 10);

​Why shouldn't ​I be able to update that array using a similar syntax?

​tim​

[1] - https://sqlite.org/carray.html


>
> --
> D. Richard Hipp
> d...@sqlite.org
> ___
> sqlite-users mailing list
> sqlite-users@mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>
___
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users


[sqlite] performing an UPDATE on a table-valued function

2017-04-16 Thread Timothy Stack
The current table-valued function feature seems to only work for
SELECT statements.  Was any thought given to whether updates
would be supported for table-valued functions?  It seems like it's
technically possible and could be made to work right now with
this awkward syntax:

  UPDATE foo SET col0 = 'bar' WHERE hidden_field = 'baz'

Having the real syntax, like the following, would be nice though:

  UPDATE foo('baz') SET col0 = 'bar'

thanks,

tim stack
___
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] sqlite with Java

2017-03-21 Thread Timothy Stack
I see that you've got a solution working, but I wanted to mention this
project which is a JDBC driver that can work with a dynamically linked
sqlite library so there shouldn't be anything to recompile:

  https://github.com/tstack/SqliteJdbcNG

Unfortunately, it hasn't seen updates for a couple years, but I think
it still works.

thanks,

tim stack

On Fri, Mar 17, 2017 at 2:35 PM, Sylvain Pointeau <
sylvain.point...@gmail.com> wrote:

> Dear all,
>
> I would like to use sqlite from Java, but I am also looking to buy SSE.
> however which library would you recommend? how to integrate SSE?
>
> ps: it would be splendid if you could provide the java libs, similar to the
> .net version.
>
> Best regard,
> Sylvain
> ___
> sqlite-users mailing list
> sqlite-users@mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>
___
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users


[sqlite] will aggregate functions be added to the json extension ?

2015-11-20 Thread Timothy Stack
Hello,

Are there any plans to add aggregate functions to the json extension
so that json arrays can be produced from a result set?  I found a
message on the json feedback thread from a few months ago that
brought this up, but there didn't seem to be a response:


http://www.mail-archive.com/sqlite-users at 
mailinglists.sqlite.org/msg03721.html

I had the same line of thinking where I wanted a more structured
version of group_concat().

I can implement this myself, but was wondering if there was an
official story.

thanks,

tim stack