sqlite.h


Objeto de instancia de tabla virtual

struct sqlite3_vtab {
  const sqlite3_module *pModule;  /* El módulo para esta tabla virtual */
  int nRef;                       /* NO USADO */
  char *zErrMsg;                  /* Mensaje de error desde sqlite3_mprintf() */
  /* Las implementaciones de tablas virtuales generalmente añaden más campos */
};

Cada implementación de módulo de tabla virtual usa una subclase de este objeto para describir una instancia particular de la tabla virtual. Cada subclase se adaptará a las necesidades específicas de la implementación del módulo. El propósito de esta supreclase es definir ciertos campos que sean comunes a todas las implementaciones de módulo.

Los métodos de tablas virtuales pueden poner un mensaje de error mediante la asignación de una cadena obtenida desde sqlite3_mprintf() a zErrMsg. El método debe tener cuidado de que cualquier cadena anterior sea liberada mediante una llamada a sqlite3_free() antes de asignar una nueva cadena a zErrMsg. Después de que el mensaje de error sea entregado a la aplicación cliente, la cadena será automáticamente liberada por sqlite3_free() y zErrMsg anulado.