Would it be possible to have SQLite tell you "not enabled" for any functions that are not compiled in? Rather than "no such function"? So for those of us who are not familiar with all the possibilities might accidentally stumble upon them? Or...for when you start disabling functions to shrink code size? Michael D. Black Senior Scientist Advanced Analytics Directorate Northrop Grumman Information Systems
________________________________ From: sqlite-users-boun...@sqlite.org on behalf of Jay A. Kreibich Sent: Mon 8/2/2010 10:15 AM To: General Discussion of SQLite Database Subject: EXTERNAL:Re: [sqlite] crypt() as SQL core function On Mon, Aug 02, 2010 at 03:58:19AM +0100, Simon Slavin scratched on the wall: > But frankly I'm not even sure that abs(), round() and soundex() should > be in SQLite. I wonder how they ever made it in. The SQL standard defines several functions. I'm fairly sure these three are not part of the core list, but they've been available on nearly every database engine for as long as we've had relational database systems. They might as well be part of the standard. Given that traditional, large-scale databases often deal with money, it isn't a surprise that abs() and round() have become standard. The SQL round() function has some pretty specific behaviors, especially when dealing with a second parameter. Having a correct implementation that works the same as every other database is a good thing. The soundex() function is a bit more unusual. This algorithm has a long history (it was first patented in 1918) that is heavily tied to the US Census data. I suspect that when people first started to seriously play around relational systems in the early 1970s, Census data, and similar datasets, where one of the few obvious matches. It made sense to have the soundex() function available for searches and matching, as it had already been in use with those types of datasets for 50 years. Still, you'll notice that, by default, the soundex() function is NOT included in SQLite. You have to explicitly activate it when compiling SQLite. I think that's a good compromise. While it is a somewhat standard function in many database systems, it is also an oddball that most people don't use. As such, it is there if you need it, but the majority of people will never notice it isn't there by default. -j -- Jay A. Kreibich < J A Y @ K R E I B I.C H > "Intelligence is like underwear: it is important that you have it, but showing it to the wrong people has the tendency to make them feel uncomfortable." -- Angela Johnson _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users