You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi! I can see that the word VIRTUAL is not part of the list of tokens in sqlite3.g. This probably (have a bit of work to do until I understand things fully) is the reason it is not understood.
To the people that has coded this: is this a conscious design decision, or simply a missed detail? I can do a bit of testing to see if I can update the grammar with the full language description in the next few days (have a little bit of time available).
@ghellquist Feel free to play around with this! 😃 We highly appreciate any help in coding!
I've started playing around with this a couple of days ago, too, and it looks like this is a bit more difficult. In the grammar file you'll need to add the VIRTUAL and the USING keyword, but also add some branch for parsing the slightly different syntax of those virtual tables. In our grammar code (in src/sqlitetypes.cpp) there's more work to be done, though, to actually interpret and store the new information.
I have added basic support for virtual tables to the grammar parser. It's still a long way to go from here because browsing and editing those tables still doesn't work as expected. But at least the Sqlite parse error is gone. You can check out the latest version in master and test yourself. And there's still a lot of work to do for better support of virtual tables, so I still want to encourage you to look into this 😃 If you need any help just post here, write me an email, or post on Gitter.
Thank you.
I agree that the grammar thing seems the least difficult, had something in place (probably not as good as your solution).
Modules for creating virtual tables seems to each have their own grammar: the fts5 module as example has quite a few extras. So in order to be simple to use, the db Browser should know the standard modules grammars. Additionally, perhaps, the support tables created by a module could be treated somewhat differently from “normal” tables.
A bit of fun, and a long road for me get up to speed in things I haven´t done for a long time.
/Gunnar
I've just added some code that should make it possible to browse virtual tables. Depending on the virtual table function it should also be possible to add and remove rows and edit cell values. The only thing that doesn't really work at all is editing the table schema of virtual tables, but I guess that's fine for now. Are you interested in giving tomorrow's nightly build a test, @ghellquist? I guess if it works for you we can close the issue 😃
Same for you of course, @bagage! 😃 You can check out the latest version from master and compile that again. The warning should disappear and the application should work much better with virtual tables in general.
As suggested earlier I'll close this issue then. If you're still having issues with virtual tables you're always welcome to re-open this issue or open a new one and I'll be happy to help 😄
Activity
justinclift commentedon Dec 29, 2016
Ahhh, that might be our grammar parser needing work then.
@MKleusberg Your kind of thing?
MKleusberg commentedon Dec 29, 2016
Yes! I'm referencing our help-wanted issue #741 here, just because that's exactly the kind of issue I was thinking about back then 😃
ghellquist commentedon Dec 31, 2016
Hi! I can see that the word VIRTUAL is not part of the list of tokens in sqlite3.g. This probably (have a bit of work to do until I understand things fully) is the reason it is not understood.
To the people that has coded this: is this a conscious design decision, or simply a missed detail? I can do a bit of testing to see if I can update the grammar with the full language description in the next few days (have a little bit of time available).
MKleusberg commentedon Jan 3, 2017
@ghellquist Feel free to play around with this! 😃 We highly appreciate any help in coding!
I've started playing around with this a couple of days ago, too, and it looks like this is a bit more difficult. In the grammar file you'll need to add the VIRTUAL and the USING keyword, but also add some branch for parsing the slightly different syntax of those virtual tables. In our grammar code (in src/sqlitetypes.cpp) there's more work to be done, though, to actually interpret and store the new information.
grammar: Add very, very basic support for virtual tables to the parser
MKleusberg commentedon Jan 5, 2017
I have added basic support for virtual tables to the grammar parser. It's still a long way to go from here because browsing and editing those tables still doesn't work as expected. But at least the
Sqlite parse erroris gone. You can check out the latest version in master and test yourself. And there's still a lot of work to do for better support of virtual tables, so I still want to encourage you to look into this 😃 If you need any help just post here, write me an email, or post on Gitter.ghellquist commentedon Jan 5, 2017
Make virtual tables browseable
MKleusberg commentedon Jan 20, 2017
I've just added some code that should make it possible to browse virtual tables. Depending on the virtual table function it should also be possible to add and remove rows and edit cell values. The only thing that doesn't really work at all is editing the table schema of virtual tables, but I guess that's fine for now. Are you interested in giving tomorrow's nightly build a test, @ghellquist? I guess if it works for you we can close the issue 😃
MKleusberg commentedon Jan 20, 2017
Same for you of course, @bagage! 😃 You can check out the latest version from master and compile that again. The warning should disappear and the application should work much better with virtual tables in general.
MKleusberg commentedon Jul 14, 2018
Has anybody had any more issues with this? If not, I'd suggest closing the issue 😄
MKleusberg commentedon Aug 16, 2018
As suggested earlier I'll close this issue then. If you're still having issues with virtual tables you're always welcome to re-open this issue or open a new one and I'll be happy to help 😄