Estoy haciendo unas pruebas con la versión embebida de FB 2.5 a 32bits (naturalmente, compilando para 32bits) y luego de un pequeño traspié (me había olvidado que era 32bits y pretendía compilar en 64bits ) al configurar la conexión pude lograr que se conecte. Pero, tengo un problemita que me llama la atención.
Resulta ser que cuando intento hacer un select a una única tabla que tiene la DB de prueba me arroja esto:
[Window Title]
Error
[Content]
SQL Error: no permission for read/select access to TABLE TABLA1. Error Code: -551. This user does not have privilege to perform this operation on this object. The SQL: SELECT * FROM TABLA1
;
[Aceptar]
Como bien saben, utilizo CodeTyphon 5.6 y Zeos 7.2.0-alpha.
La base de datos es bastante simple.Este es el script:
/******************************************************************************/
/* Generated by IBExpert 2015.6.17.1 26/01/16 15:45:38 */
/******************************************************************************/
SET SQL DIALECT 3;
SET NAMES NONE;
SET CLIENTLIB 'xxx\Prueba FB Embebed\App\fbembed.dll';
CREATE DATABASE 'xxx\Prueba FB Embebed\App\PruebaEmbebed.fdb'
USER 'SYSDBA' PASSWORD 'masterkey'
PAGE_SIZE 16384
DEFAULT CHARACTER SET NONE COLLATION NONE;
/******************************************************************************/
/* Tables */
/******************************************************************************/
CREATE TABLE TABLA1 (
ID INTEGER NOT NULL,
NOMBRE VARCHAR(30),
FECHA TIMESTAMP,
VALOR DOUBLE PRECISION
);
/******************************************************************************/
/* Primary keys */
/******************************************************************************/
ALTER TABLE TABLA1 ADD CONSTRAINT PK_TABLA1 PRIMARY KEY (ID);
NOTA: Por cuestiones de seguridad, reemplacé el directorio padre por xxx.
Y me he asegurado de que dicha tabla tenga algunos registros. Obviamente que al ser embebida tengo que estar conectando y desconectando para estar trabajando entre IBExpert y Lazarus.
El proyecto no es más que un form con un ZConnection, un ZQuery, un TDataSource y un TDBGrid. Al activar el ZQuery arroja dicho error.
La sentencia SQL es muy básica:
SELECT * FROM TABLA1
Por lo que no tiene demasiada ciencia. Ya sea en tiempo de diseño como en ejecución recibo este error. Y no encuentro alguna referencia de por donde puede estar el problema. Esta misma consulta desde el IBExpert trabaja bien.
En el directorio donde se encuentra la aplicación tengo todo lo que provee el zip de la embebida excepto la carpeta doc. Por lo que la carpeta \App tiene esto:
aliases.conf
fbembed.dll
firebird.conf
firebird.msg
ib_util.dll
icudt30.dll
icuin30.dll
icuuc30.dll
msvcp80.dll
msvcr80.dll
proyect1.exe
proyect1.ico
proyect1.lpr
proyect1.lpi
proyect1.lps
proyect1.res
PRUEBAEMBEBED.FDB
unit1.lfm
unit1.pas
/intl
/lib <--- este es generado por Lazarus. Ahí se almacena todo los archivos de compilación
/udf
Noto que en el script de la metadata no figuran los grants ¿Tendrá algo que ver?
A ver si me hechan algo de luz.
Saludos,