[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#70145: [PATCH] Add sqlite-execute-batch command
From: |
Eli Zaretskii |
Subject: |
bug#70145: [PATCH] Add sqlite-execute-batch command |
Date: |
Tue, 02 Apr 2024 19:21:52 +0300 |
> From: Javier Olaechea <pirata@gmail.com>
> Date: Tue, 2 Apr 2024 10:03:30 -0500
>
> Hi, while writing tests for an Emacs package I found myself needing to
> execute multiple statements against an in-memory database, to initialize
> the schema. Currently there is no easy way to do so as sqlite-execute
> only executes the first command and ignores the rest. The reason most
> likely being that accepting arguments for multiple statements and
> properly preparing would be a tricky task. So instead I'm adding the
> functionality as a new function that takes no arguments.
Thanks.
> +DEFUN ("sqlite-execute-batch", Fsqlite_execute_batch, Ssqlite_execute_batch,
> 2, 2, 0,
> + doc: /* Execute multiple SQL statements. */)
> + (Lisp_Object db, Lisp_Object query)
> +{
> + check_sqlite (db, false);
> + CHECK_STRING (query);
> + return sqlite_exec (XSQLITE (db)->db, SSDATA (query));
> +}
> +
This has a subtle bug: it will only work correctly for plain-ASCII
string in QUERY. If QUERY is allowed to included non-ASCII
characters, you need to encode it using encode_string.
Also, the doc string should mention the function's arguments, and it
should say what kind of Lisp object is QUERY.
> +@defun sqlite-execute-batch db statements
> +Execute the @acronym{SQL} @var{statements}. This might be useful when we
> +want to execute multiple @acronym{DDL} statements.
Same here, and in addition please leave two spaces between sentences,
per our conventions (in the commit log message as well).
- bug#70145: [PATCH] Add sqlite-execute-batch command, Javier Olaechea, 2024/04/02
- bug#70145: [PATCH] Add sqlite-execute-batch command,
Eli Zaretskii <=
- bug#70145: [PATCH] Add sqlite-execute-batch command, Javier Olaechea, 2024/04/02
- bug#70145: [PATCH] Add sqlite-execute-batch command, Eli Zaretskii, 2024/04/02
- bug#70145: [PATCH] Add sqlite-execute-batch command, Javier Olaechea, 2024/04/02
- bug#70145: [PATCH] Add sqlite-execute-batch command, J.P., 2024/04/02
- bug#70145: [PATCH] Add sqlite-execute-batch command, Javier Olaechea, 2024/04/02
- bug#70145: [PATCH] Add sqlite-execute-batch command, Eli Zaretskii, 2024/04/13
- bug#70145: [PATCH] Add sqlite-execute-batch command, Javier Olaechea, 2024/04/13
- bug#70145: [PATCH] Add sqlite-execute-batch command, Eli Zaretskii, 2024/04/14