9

I'm developing an app which requires that the user selects a year formatted like this 1992-1993 from a spinner. The tablename is also named 1992-1993 and the idea is that using SQL the values from this table are pulled through with a statement like this select * from 1992-1993. When I run the emulator however, it throws an error.

If I then relabel the Spinner item to NinetyTwo and rename the table to NinetyTwo and run the emulator it runs as expected and the data is pulled through from the table.

Does SQLite have an issue with numbers in table names?

Brian Tompsett - 汤莱恩
  • 5,753
  • 72
  • 57
  • 129
Sumino7
  • 123
  • 1
  • 4
  • possible duplicate of [What are valid table names in SQLite?](http://stackoverflow.com/questions/3694276/what-are-valid-table-names-in-sqlite) – eumiro Oct 24 '10 at 10:07

2 Answers2

7

Yes and No. It has an issue with numbers at the beginning of a table name. 1992-1993 is an expression returning -1. Try to rename the table to Year1992.

Here a similar issue on SO.

Community
  • 1
  • 1
eumiro
  • 207,213
  • 34
  • 299
  • 261
0

sorry for late post

There may be a deeper issue here - is the structure you are using (table name per item in spinner) the best one for the job?

You may find that you want a number of tables e.g.

spinner_value (id, value) form_data(id, spinner_value_id, etc ....)

Ruskin
  • 5,721
  • 4
  • 45
  • 62