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
Editing a table shows as if table is empty where it's actually not #1194
Comments
Can you upload the database to dbhub.io so we can take a look? |
yes, I can |
Here is db. really empty with nothing special |
Now I installed version 3.10 and it has the same issue. Previously I was using Debian 9 default version. |
When I do Copy Create Statement I get this: CREATE TABLE ); |
Here is a more detailed error msg: Also I am able to browse data and I am sure db file is fine. I also compiled older sqliteman app and it's working fine. So there is something wrong with sqlite browser. |
Thanks for mentioning your language settings. I think this might be the problem. Can you switch both DB4S and your keyboard to English and try again? I'm just guessing since the last error shows unexpected char and it is |
yes I already tested it with default US english and no changes and same error. |
Antlr uses the current system locale when parsing SQL statements. This is problematic because SQL is case-independent and for converting characters to lower/upper case it is going to use the locale. For Turkish however this adds implicit conversions between the dotted and dotless I which triggers another problem in Antlr: it doesn't cover the whole Unicode character set. This commit fixes the implicit conversions. See issue #1194.
Antlr uses the current system locale when parsing SQL statements. This is problematic because SQL is case-independent and for converting characters to lower/upper case it is going to use the locale. For Turkish however this adds implicit conversions between the dotted and dotless I which triggers another problem in Antlr: it doesn't cover the whole Unicode character set. This commit fixes the implicit conversions. See issue #1194.
After setting my locale to Turkish I could reproduce this issue here. Switching it back to another one makes the problem go away. This is caused by a combination of two problems we have:
Now, if the parsing isn't successful we can't fill in the Edit Table dialog because we just don't know how the table looks like. For browsing there is a fallback mechanism which explains why that is working for you. The only way to solve this is to fix the parsing problems mentioned above. So I've just merged a commit which should fix problem 1. This means problem 2 isn't triggered anymore as well. @sezeryalcin Can you check if it's working for you, too? You'll need to compile DB4S yourself to test but if you have any problems, we can help you here 😄 |
@sezeryalcin We have step by step instructions for compiling, if that helps. I think the Ubuntu instructions also work for Debian. Literally just cut-n-paste them. 😄 https://github.com/sqlitebrowser/sqlitebrowser/blob/master/BUILDING.md#ubuntu-linux |
Hey guys, I will compile and let you know as possible as I need this to work. I think Martin found the main problem. Thank you for your quick responses. |
Not sure yet. We'd need to make another main release (likely 3.11.0), and then whoever made the 3.9.1 package for Debian would need to update it for with that. |
Yeah, I think what will take most time here is us preparing a new major release. There are still many things that need to be finished. But Arto, the Debian package maintainer, usually pushes our updates relatively quickly into the Debian repository 😄 Thanks for testing by the way! I'll close this issue then. If you should notice any other problems with this (or with any other part of the program) feel free to open a new issue 😄 |
Details for the issue
I have an existing DB. I tested both newly created DB by sqlitebrowser and one created by another app like PHP.
When I click on modify table, table columns are not populated. It's showing it as if it's empty
For example:
CREATE TABLE
updates
();
But when I use "Copy Create Command" or open with another app, I see this:
CREATE TABLE "updates" ( "time" INTEGER, "id" INTEGER, "t" REAL, "h" REAL, "st" REAL, "enabled" INTEGER, "relay_on" TEXT, "cod" TEXT, "ip" TEXT)
Useful extra information
I'm opening this issue because:
I'm using DB4S on:
I'm using DB4S version:
I have also:
The text was updated successfully, but these errors were encountered: