Name

sqlite3_create_collation() — Register a custom collation implementation

Definition

int sqlite3_create_collation(    sqlite3* db, const char* name, int text_rep,
                                 void* udp, comp_func );
int sqlite3_create_collation16(  sqlite3* db, const void* name, int text_rep,
                                 void* udp, comp_func );
int sqlite3_create_collation_v2( sqlite3* db, const char* name, int text_rep,
                                 void* udp, comp_func, dest_func );

int comp_func( void* udp, int sizeA, const void* textA,
                          int sizeB, const void* textB );
void dest_func( void* udp );
db

A database connection.

name

The name of the collation in UTF-8 or UTF-16, depending on the function used.

text_rep

The text representation expected by the comparison function. This value can be one of SQLITE_UTF8, SQLITE_UTF16 (native order), SQLITE_UTF16BE, SQLITE_UTF16LE, or SQLITE_UTF16_ALIGNED (native order, 16-bit aligned).

udp

An application-defined user-data pointer. This value is made available to both the collation comparison function and the collation destroy function.

comp_func

A function pointer to the application-defined custom collation comparison function.

dest_func

An optional function pointer to the application-defined collation destroy function. This may be NULL.

sizeA, sizeB

The length of the textA and textB parameters, respectively, in bytes.

textA, textB

Data buffers containing the text values in the requested representation. These may not be null-terminated.

Returns (sqlite3_create_collation[16][_v2]())

An SQLite result code.

Returns (comp_func())

The results ...

Get Using SQLite now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.