Thanks Igor!!!

It was frustrating and confusing becuase I have not encountered this 
index-name feature in any other DB I've worked with, and its 
undocumented on sqlite.org. it doesnt give any restrictions or 
recommendations for index names, it doesnt even say when you must use 
them or not use them, so one could simply guess, or would have to ask on 
the support forum, as I have.

Igor Tandetnik wrote:
> a a <[email protected]> wrote:
>> Do index names need to be different from field names?
> 
> No.
> 
>> When doing selects on indexed fields, can I use the field name, or
>> must I use the index name?
> 
> You must use the field name, you cannot use index name. An index will be 
> used automatically if the engine deems it beneficial.
> 
>> Can I say: CREATE INDEX x ON t (x); ?
> 
> Yes.
> 
>> or does it have to be: CREATE INDEX index_t_x ON t (x); ?
> 
> This is valid, too.
> 
>> assuming the latter, can I say SELECT * FROM t ORDER BY x;
> 
> Yes.
> 
>> or do I
>> have to say ORDER BY index_t_x;
> 
> No. In fact, it won't work, you'll get a syntax error.
> 
>> This is extremely ambiguous and confusing.
> 
> What specifically seems to be the problem?
> 
>> I've got enough field names, I don't want to have to start dealing
>> with unique index names as well in SELECT/INSERT/UPDATE queries.
> 
> Wherever did you get the idea in the first place?
> 
> Igor Tandetnik
> 
> 
> 
> _______________________________________________
> sqlite-users mailing list
> [email protected]
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
> 

_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to