2009-08-11 21 views
7

Tengo un conjunto de archivos en una biblioteca en un AS/400/iSeries/System-I/whatever-IBM-wants-me-call-it-these- días para los que no tengo DDS (creados en SQL I) pero a los que me gustaría agregar descripciones de campo. No puedo encontrar una forma de hacerlo en el 400.Agregar una descripción de campo a un archivo de DB2/400

¿Alguien sabe cómo puedo agregar la descripción del campo? Está actualizando directamente SYSIBM.SQLCOLUMNS para establecer COLUMN_TEXT seguro?

(No busco aquí respuestas generales de SQL, solo respuestas específicas de DB2/400. Desafortunadamente, dado el cambio de nombre de IBM de esta plataforma y el nombre muy ininteligible que eligieron, es casi imposible encontrar respuestas (o especialmente para demostrar que NO hay una respuesta) a tales preguntas sin pasar siglos buscando documentación voluminosa e impenetrable.

Respuesta

13

Utilice el comando SQL LABEL. Si está utilizando el comando STRSQL de pantalla verde, puede solicitarlo. El comando LABEL se puede usar para establecer tanto el texto de la columna como los encabezados de las columnas.

Aquí hay un ejemplo del uso del comando LABEL para proporcionar texto de columna para dos campos en el archivo llamado TESTFILE1. Los campos se denomina campo1 y CAMPO2 en este ejemplo:

LABEL ON COLUMN TESTFILE1 
(FIELD1 TEXT IS 'My Field 1 text', FIELD2 TEXT IS 'My Field 2 text') 

Aquí es un ejemplo del uso del comando LABEL para dar títulos de las columnas que aparecen en los resultados de la consulta:

LABEL ON COLUMN TESTFILE1 
(FIELD1 IS 'My field   Heading 1', 
FIELD2 IS 'My field   Heading 2') 

Al crear encabezados de columna , obtienes 60 caracteres por campo. Los primeros 20 caracteres son la línea 1. La segunda línea de 20 caracteres son 2. Los terceros son 20 caracteres línea 3. En el ejemplo anterior, los títulos de campo se parecería a esto:

My field  My field 
Heading 1 Heading 2
+0

¡acabas de guardar mi tush! – jlarson

+0

por cierto, ¿lo sabías, o era algo que buscaste? y si miraste hacia arriba, dame una pista sobre tu metodología porque siempre estoy perplejo buscando en Google cosas como 400 ... – jlarson

+0

Es una mezcla. Eché un vistazo a la tabla de contenidos de referencia del comando SQL, vi la palabra clave LABEL y luego recordé haberla visto antes. Mi primera exposición a esta palabra clave es cuando utilicé una API que genera DDL desde archivos físicos AS/400 y DDL generó comandos incluidos LABEL. El primer lugar donde voy para esto es el iSeries InfoCenter. Aquí hay un enlace a la versión V5R4: http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp Para los detalles y ejemplos, ingresé a STRSQL, creé una tabla y luego solicité algunos Comandos LABEL. –

4

Como una sugerencia adicional, puede usar iSeries Navigator para obtener la declaración SQL para ese archivo. Si inicia este programa, inicie sesión en el iSeries, vaya a la base de datos, vaya a los esquemas y vaya a las tablas, luego podrá encontrar su archivo. Encontrarás el botón "generar SQL" en alguna parte. Esto crea una declaración SQL exacta para que usted cree la tabla. Puede usar esta declaración SQL para trabajar con esta tabla.

Para sus preguntas, la "ETIQUETA" de otra respuesta es suficiente. Esta respuesta es útil si quieres hacer más cosas, eso no se puede hacer con ALTER.

Cuestiones relacionadas