Pregunta acerca de SELECT en SQLite

Amigos, agradezco su tiempo antes que nada.

Tengo el siguiente cdigo en un evento Action de un botn:

dim v_nombregrupo as string = nombre_grupo_fld.text

dim grupo_rs as RecordSet=session.db.sqlselect(“select * from grupos where NOMBRE=’”+v_nombregrupo+"’")

Usando ‘"+v_nomregrupo+"’ Tengo mi consulta con un dato de tipo STRING.

La pregunta es, como le hago con otros tipos de datos: Por ejemplo…INTEGER, DATE…

Gracias !

Juan Man

Hola Juan, lo que he visto que recomiendan siempre en el foro (los que saben) es aprender sobre Prepared Statement.

Una vez que revisas la documentacin, el ejemplo que viene con Xojo y practicas un poco, te dars cuenta de que es muy conveniente usarlo para: a) evitar inyeccin no deseada en la base de datos y b) definir cada variable como mejor convenga.

Tomo parte del ejemplo del documento sobre SQLitePreparedStatement:

[code]Dim ps As SQLitePreparedStatement = _
db.Prepare(“SELECT * FROM Persons WHERE Name = ? AND Age >= ?”)

ps.BindType(0, SQLitePreparedStatement.SQLITE_TEXT)
ps.BindType(1, SQLitePreparedStatement.SQLITE_INTEGER)

ps.Bind(0, “john”)
ps.Bind(1, 20)

Dim rs As RecordSet = ps.SQLSelect[/code]

El BindType te ayuda a definir si es tipo Texto, Entero, Booleano, etc.

Puedes cambiar el ps.Bind por campos en el ps.SQLSelect, siguiendo el ejemplo de arriba, quitar los 2 ps.Bind y sera:

Dim rs As RecordSet = ps.SQLSelect("john",20)

Espero no confundirte mas. Puedes visitar https://www.aprendexojo.com/2016/05/protege-tus-apps-de-inyecciones-sql/

Hola Juan,

Igual encuentras interesante estos dos cursos gratuitos sobre SQLite:

Fundamentos SQLite
Primeros pasos con SQLiteDatabase y iOSSQLiteDatabase

Sobre el uso de los PreparedStatements:

Protege tus apps de inyecciones SQL

Y tutoriales de iniciacin sobre SQLite con Xojo:

Xojo: Primeros pasos con SQLite
Primeros pasos con SQLite: Insertar y Borrar registros
Modificar Registros y OOP en Xojo
Transacciones en bases de datos
Bases de datos: Guardar y Recuperar imgenes

Javier

Alberto, gracias por tu tiempo y paciencia. En este momento estoy dndole una revisada a la documentacin. Agradezco nuevamente el apoyo y de igual manera estoy a tus ordenes.

Javier, agradezco el material que compartes y estoy seguro que me ser de mucha ayuda. En estos momentos estoy haciendo algunos ejercicios de prctica y no sabes…parezco nio con juguete nuevo.