Red de conocimiento informático - Problemas con los teléfonos móviles - consulta difusa de sqlite

consulta difusa de sqlite

Los dos métodos principales son glob y like.

like se puede configurar para que distinga entre mayúsculas y minúsculas; de forma predeterminada, no distingue entre mayúsculas y minúsculas, _ representa un carácter, % representa un número indeterminado de caracteres

distinción global Mayúsculas y minúsculas, ? representa un carácter, * representa un número indeterminado de caracteres

Código de muestra

Class.forName("org.sqlite.JDBC");

String dbPath1 = "C:sqlitetestq.db";

new File( dbPath1).delete();

Conexión conn = DriverManager.getConnection("jdbc:sqlite: "+ dbPath1);

Estadística de declaración = conn. createStatement();

stat.executeUpdate("crear tabla si no existe stu1(nombre varchar(20), edad int, puntuación int) ;");

stat.executeUpdate("insertar en valores stu1('A1',12,72);");

stat.executeUpdate("PRAGMA case_SENSITIVE_like = 1; ");

stat.executeUpdate("PRAGMA case_SENSITIVE_like =0;");

ResultSet rs = stat.println(" nombre = " + rs.getString("nombre ") + " edad: "+rs.getInt("edad") + " puntuación: "+rs.getInt("puntuación"));

}

rs.close () ;

rs = stat.executeQuery("seleccione s1.nombre,s1.edad,s1.score de stu1 s1 donde s1.nombre como 'A_';"

> while (rs.next()) {

System.out.println(" nombre = " + rs.getString("nombre") + " edad: "+rs.getInt("edad") + " puntuación: "+rs.getInt("puntuación"));

}

rs.close();

rs = stat.executeQuery( "seleccione s1.name,s1.age,s1.score de stu1 s1 donde s1.name como 'a_';");

while (rs.next()) {

Sistema .out.println(" nombre = " + rs.getString("nombre") + " edad: "+rs.getInt("edad") + " puntuación: "+rs.getInt("puntuación"));

}

rs.close();

rs = stat.executeQuery("seleccione s1.nombre,s1.edad,s1.puntuación de stu1 s1 donde s1 .nombre GLOB 'd3*' ;");

while (rs.nex

t()) {

System.out.println(" nombre = " + rs.getString("nombre") + " edad: "+rs.getInt("edad") + " puntuación: " +rs.getInt("puntuación"));

}

rs.close();

System.out.println("---- ");

rs = stat.executeQuery("seleccione s1.name,s1.age,s1.score from stu1 s1 donde s1.name glob 'D3?' ;");

while (rs.next( )){

System.out.println("nombre = " + rs.getString("nombre")+" edad: "+rs.getInt("edad" )+" puntuación: "+rs.getInt("puntuación"));

}

close();

stat.close() ;

conn.close();

Salida

nombre = A3 edad:14 puntuación:74

nombre = D33 edad: 14 puntuación:74

nombre = A1 edad:12 puntuación:72

nombre = A2 edad:13 puntuación:73

nombre = A3 edad:14 puntuación :74

Nombre= A1 Edad: 12 Puntuación: 72

Nombre= A2 Edad: 13 Puntuación: 73

Nombre= A3 Edad: 14 Puntuación: 74

----

Nombre = D33 Edad: 14 Puntuación: 74