-
Notifications
You must be signed in to change notification settings - Fork 4.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error message on insert/update/delete queries #7180
Comments
Interesting. Redash is generally used as a reporting tool (ie SELECT queries), but I could see that being able to stuff that changes the database would indeed be useful. This is probably an area of things that could be looked at and improved to support doing so more. |
Yeah, I realize it's not the normal use case, but I think it's worth supporting. We use our Redash installation not just for reporting, but also as a way to grant certain people access to the database (preferably including |
We often run
@jonahgreenthal what behavior are you looking for? I think expecting 0 or more rows in return is reasonable, but there is doubtless some better error handling that could be implemented for some data sources. |
I listed my preferences in the numbered list in my original message. Talking about |
Ah, I overlooked the numbered list you posted. So for (1) I think you're suggesting that if the result list contains an expected result, check |
I'm not sure how it would be implemented, but that certainly sounds plausible. |
Issue Summary
When a
insert
,update
, ordelete
query is run in Redash, the result is an error message:The query does not actually run, and the error message is completely inscrutable.
If the query is followed by a
select
query, like this——then the second query runs and returns the expected value, but the first query still doesn't actually run.
Here are some better ways this could be handled, from best to worst:
insert
,update
, ordelete
query is run, actually run it and provide feedback like "1 row affected". Also supportinsert…output
(SQL Server) and analogous operations with other DBMSes (update...returning
) in which data are returned from a mutation.insert
,update
, ordelete
query is run, actually run it and provide no feedbackinsert
,update
, ordelete
query is run, actually run it, but still provide an error message because no results are returned (Redash 8 with Postgres behaved this way. I don't like it, but it's still better to run the query than not.)insert
,update
, ordelete
query is run, provide an error message that tells the user what's going on.This occurs in all environments I have tested, using Redash 10.1.0.b50633 via the Docker image with a Microsoft SQL Server data source.
Steps to Reproduce
update Contact set id=1 where id=1;
.Expected behavior: The query runs as instructed, and there is no error message.
Technical details:
The text was updated successfully, but these errors were encountered: