¿Cómo puedo insertar una comilla doble (") en el campo Varchar de la base de datos SQLite?

Estoy tratando de insertar en una tabla con este campo TITLE varchar(200) NOT NULL la siguiente oración:

 INSERT OR IGNORE INTO EXAMPLETABLE VALUES ("1-Preludi \"Obrint Pas 2011\"", ... 

El problema es que SQLite missunderstand el \ "escape caracter, y no sé cómo ponerlo para resolver el problema (tal vez un código de carácter?) En mi programa de Android.

5 Solutions collect form web for “¿Cómo puedo insertar una comilla doble (") en el campo Varchar de la base de datos SQLite?”

Para insertar valores en una base de datos, siempre debe utilizar SQLiteStatement ( HowTo ) ya que evitan los valores e impiden que su aplicación se oriente a SQL-Injections .

Además, si está insertando varios valores (digamos en un bucle), ejecutar una instrucción precompilada con valores enlazados diferentes es mucho más rápido que una instrucción-inserción normal.

Simplemente trabajando con sqlite y comandos directos de insertar sql desde la línea de comandos, encuentro que la doble cotización se escapa. Con tu ejemplo

 INSERT OR IGNORE INTO EXAMPLETABLE VALUES ("1-Preludi ""Obrint Pas 2011""", ... 

Pruebe algo similar:

 ContentValues values = new ContentValues(); values.put("YOURCOLUMNNAME", "1-Preludi \"Obrint Pas 2011\""); // ... other stuff you want to insert ... SQLiteDatabase db = ... ; // Usually obtained using a SQLiteOpenHelper long id = db.insertWithOnConflict("EXAMPLETABLE", BaseColumns._ID, values, SQLiteDatabase.CONFLICT_IGNORE); 

Use esto para insertar datos con cualquier charecter especial

 ContentValues initialValues = new ContentValues(); initialValues.put("Id", id); initialValues.put("Name", Name); // ... myDataBase.insert("EXAMPLETABLE", null, initialValues); 

Prueba esto:

 INSERT OR IGNORE INTO EXAMPLETABLE VALUES ('1-Preludi "Obrint Pas 2011"', ... 
  • Intente volver a abrir un objeto ya cerrado: SQLiteDatabase:
  • Cómo eliminar la base de datos SQLite de Android mediante programación
  • ¿Está bien usar la clase estática de "ayudante de base de datos"?
  • Actualizar ListView después de eliminar la operación
  • cómo guardar datos de json en sqlite en android
  • SQLiteDiskIOException: error de E / S de disco (código 3850)
  • Obtener mínimo de la columna de la base de datos SQLite?
  • Insertar datetime en la base de datos sqlite android
  • Mejor manera de acceder a la base de datos en la aplicación multi-threaded Android?
  • Cómo obtener el tamaño de la base de datos sqlite actual o el tamaño del paquete en Android?
  • Sqlite cómo obtener elementos de cadena con el cursor
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.