public abstract class Collation extends Object
A subclass of org.sqlite.Collation can be registered with Collation.create() and called by the name it was given. All collations must implement xCompare(String, String), which is called when SQLite compares two strings using the custom collation. Eg.
Class.forName("org.sqlite.JDBC"); Connection conn = DriverManager.getConnection("jdbc:sqlite:"); Collation.create(conn, "REVERSE", new Collation() { protected int xCompare(String str1, String str2) { return str1.compareTo(str2) * -1; } }); conn.createStatement().execute("select c1 from t order by c1 collate REVERSE;");
Constructor and Description |
---|
Collation() |
Modifier and Type | Method and Description |
---|---|
static void |
create(Connection conn,
String name,
Collation f)
Registers a given collation with the connection.
|
static void |
destroy(Connection conn,
String name)
Removes a named collation from the given connection.
|
protected abstract int |
xCompare(String str1,
String str2)
Called by SQLite as a custom collation to compare two strings.
|
public static final void create(Connection conn, String name, Collation f) throws SQLException
conn
- The connection.name
- The name of the collation.f
- The collation to register.SQLException
public static final void destroy(Connection conn, String name) throws SQLException
conn
- The connection to remove the collation from.name
- The name of the collation.SQLException
protected abstract int xCompare(String str1, String str2)
str1
- the first string in the comparisonstr2
- the second string in the comparisonCopyright © 2022. All rights reserved.