I require a VERY experienced C programmer to write functions to extend the capabilities of SQLite (version 3).
Ideally the coder will be very familiar with the SQLite project. <[login to view URL]>
These functions must follow the same pattern and C coding standards as the existing SQLite source code and must work with the current Windows C source (3.3.5)
Please read and understand <[login to view URL]~jplyon/sqlite/[login to view URL]>
Efficiency of code and thread safety is utmost of importance!!!!
Once the code is complete I intend to release this to the public domain. ie. no copyright or open source licence, the code will be freeware same as existing SQLite project.
See <[login to view URL]>
## Deliverables
The deliverables are all C code files and headers, def files etc.
The code must compile in MS [login to view URL] 2003 and a project containing the SQLite source and new functions must be supplied.
**All functions added must be tested with large (at least 1 million rows) dataset that the coder must generate.**
SQlite Analyzer (<[login to view URL]>) must be used to test the new [login to view URL] generated for each new function. The 30 day eval version can be used.
New functions must be hooked into the *func.c* file but the bulk of the code must be in a separate DLL or source file.
An example of how to add a *Sign()* function to SQLite is shown here:
<[login to view URL]>
**The coder should understand how this works and how to add scalar and aggregate functions to SQLite.**
The functions required must match the behaviour found in SQL Server 2000, or as defined in ANSI SQL-92 spec.
**Numeric Functions:**
Sqrt
Floor
Ceiling
Sign
Pi - constant function
ACos
ASin
ATan
Atn2
Cos
Cot
Degrees
Exp
Log
Log10
Power
Radians
Sin
Square
Tan
**String Functions:
**
Charindex
Patindex
Left
Right
LTrim
RTrim
Trim
Replicate
Reverse
Replace
Difference - numeric diff in Soundex values
**Aggregate Functions:**
StdDev
Variance
Median
Mode
The definition of these functions is that found in SQL Server 2000 or if not, generally accepted algorithm.
## Platform
The code must be plain ANSI C and must compile in any modern C compiler, including Visual Studio .NET
I am only interested in the Windows platform, but the code should work on Linux and Mac also.