En cuanto a que no te gusta tener ficheros sin DDS, ¿es por que te gusta tener los fuentes de los ficheros de datos? Si es por eso con SQL sigues teniendo los fuentes tanto de la tabla en si como de índices, vistas, restricciones,... y la potencia que te da el SQL no tiene comparación a las DDS.

Desde estos fuentes SQL con RUNSQLSTM creas las tablas, índices, vistas,... igual que ahora haces con CRTPF o CTRLF (opción 14 de PDM).

Incluso es posible desde los ficheros que tienes ahora (incluso sin tener el fuente DDS) generar las sentencias DDL de SQL que les corresponden, mediante iSeries Navigator o mediante el API QSQGNDDL.

Y de todas maneras se pueden tener conviviendo juntas tablas creadas desde DDS e ir creando las nuevas desde SQL.

Saludos

Vicente García Valero
Departamento Sistemas
Cerámica SALONI, S.A.

Jordi Parera wrote:
Hola Foro,

Estoy intentado crear un fichero con un campo autoincremental vía DDS,
creo que es imposible, me lo podrían confirmar.

Mediante SQL ningún problema, aunque no me gusta excesivamente tener
ficheros sin DDS.

Me he encontrado con una situación como mínimo sorprendente, si creo un
fichero vía SQL y posteriormente intento añadir un campo autoincremental
con una sentencia de este estilo:

ALTER TABLE Fichero ADD COLUMN campo INT GENERATED ALWAYS AS IDENTITY (START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE NO
CYCLE NO ORDER CACHE 20)

, me lo crea sin ningún problema. Pero si intento hacer lo mismo contra
un fichero creado con DDS, sin ningún campo clave me da el siguiente
error:

Mensaje . . . . : Sólo se permite una columna ROWID o IDENTITY para la
tabla

Fichero de Biblioteca.
Causa . . . . . : La columna "campo" no puede crearse en la tabla
"Fichero"
de "Biblioteca" ya que la columna *N ya se ha definido. Puede haber como
máximo una columna IDENTITY y una columna ROWID que estén definidas en una tabla.
Recuperación . : Elimine una de las columnas o bien cambie los atributos
de

modo que sólo una columna esté definida como ROWID o como una columna IDENTITY. Intente de nuevo la petición.
Alguien me podría decir porque o si estoy haciendo algo incorrectamente,
muchas gracias a todos por vuestra ayuda.


__________________________________________________
Forum.HELP400 es un servicio más de NEWS/400.
© Publicaciones Help400, S.L. - Todos los derechos reservados
http://www.help400.es
_____________________________________________________

Para darte de baja visita la siguente URL:
http://coyote.combios.es/mailman/listinfo/forum.help400

Responder a