Mostrando entradas con la etiqueta DB2. Mostrar todas las entradas
Mostrando entradas con la etiqueta DB2. Mostrar todas las entradas

lunes, 9 de febrero de 2015

Crear un campo en una tabla existente en DB2

Este script permite agregar un campo tipo char de largo 3 que no permite nulos, a una tabla que ya existe en una base DB2.


ALTER TABLE Esquema.Tabla ADD Campo_Nuevo CHAR(3) DEFAULT NOT NULL;

Para agregar un campo que por defecto acepte nulos

ALTER TABLE Esquema.Tabla ADD Campo_Nuevo CHAR(3) DEFAULT NULL;
 
Tambien es posible indicar que el nuevo campo tendra un valor por defecto. En el ejemplo siguiente, el campo por defecto tendra los siguientes caracteres: YES

ADD Campo_Nuevo CHAR(3) DEFAULT NOT NULL 'YES';

martes, 16 de diciembre de 2014

Crear una tabla desde un SELECT en DB2

En un blog con tips no puede faltar este: Como crear una tabla desde una consulta SQL (ya he puesto de MS SQL), ahora DB2:


CREATE TABLE ESQUEMA.TABLA  AS  (
    SELECT Campo1, Campo2 , Campon 
    FROM ESQUEMA.TABLA_ORIGEN 
    ) WITH DATA


Donde:

WITH NO DATA        :    Solo crea la estructura
WITH DATA               :    Copia los datos comprendidos en el SELECT

Por ejemplo: Si queremos crear una tabla para guardar paises se puede usar

CREATE TABLE ESQUEMA.PAIS AS ( SELECT '056' AS CODPAIS, 'CHILE ' AS PAIS FROM sysibm.sysdummy1) WITH DATA

lunes, 15 de diciembre de 2014

Cambiar el largo de un campo en DB2

Para cambiar el largo de un campo en DB2 se debe ejecutar el siguiente comando:  

ALTER TABLE ESQUEMA.TABLA ALTER COLUMN NOMBRE_DEL_CAMPO SET DATA TYPE CHAR(3)

Los datos que cambian ESQUEMA.TABLA , NOMBRE_DEL_CAMPO y el largo CHAR(n). Los reemplazas por los que corresponda a tu BD.

Fuente
http://razorsql.com/features/db2_change_column_type.html

miércoles, 20 de marzo de 2013

Nombre de la ubicación DB2

Para quienes han trabajado con Microstrategy se habrán encontrado que para configurar un ODBC no sirve hacerlo con la herramienta que trae Windows. Se debe hacer con la herramienta de Microstrategy.

Estaba configurando un ODBC para conectarme a una DB2 para iSeries (No lo había hecho hasta ahora). Y el dialogo me pedía el siguiente dato: Ubicación (Location). Que es según el mismo dialogo, el nombre de la ubicación DB2.
Ni idea, yo no estaba ese día lunes después que Dios descanso de la creación y que instalaron DB2 en la empresa. Al parecer nadie porque nadie supo de que se trataba. Buscando en la red encontré lo que estaba buscando, una sentencia SQL para saber el nombre de la ubicación DB2.


SELECT CURRENT SERVER FROM SYSIBM.SYSDUMMY1

Gracias a esto puede completar el dialogo de MSTR.


Otros datos:
  • Colección Es el esquema
  • Propietario del paquete Usuario con los permisos

domingo, 10 de marzo de 2013

Crear ambiente de desarrollo con DB2

Estoy creando un ambiente de desarrollo en mi PC (Windows 7) para trabajar sobre la base de datos DB2. Esto porque en el trabajo se utiliza DB2 pero sobre iSeries. Ya tengo instalada la versión express de DB2, por lo que me está faltando es crear una base de datos, esquemas y las tablas. Por lo que hago lo siguiente:
  • Inicio - Ejecutar - cmd
  • db2cmd (se ejecuta otra ventana)
  • db2 create database test (en la ventana nueva)
Donde test, es el nombre de mi base de datos.

Para crear un esquema uso la siguiente sentencia:

db2 CREATE SCHEMA SCTEST2

Donde SCTEST2 es el nombre que le doy al esquema que estoy creando.


Ahora creo una tabla sobre el esquema SCTEST2.


db2 CREATE TABLE SCTEST2.PAIS (ID INT, PAIS CHAR(10))




jueves, 20 de diciembre de 2012

Concatenar en DB2

Para concatenar texto en DB2 se usa CONCAT. Esta sentencia también se encuentra en Oracle y Mysql, pero su uso en DB2 es distinto y no es restrictiva como lo es en Oracle. Se puede decir que CONCAT en DB2 se usa como el símbolo mas , o las barras paralelas de los otros motores.

Ejemplo de uso:

select substr('20120102',1,4) concat '-' concat substr('20120102',5,2)
from sysibm.sysdummy1



En el ejemplo, se puede ver que se extrae de una cadena que contiene una fecha (yyyymmdd), el año y el mes y luego se concatena estos valores para darle a el siguiente formato al resultado yyyy-mm. También se usa la tabla sysdummy1 que es la versión DB2 de la tabla dummie de Oracle.




lunes, 17 de diciembre de 2012

Como saber la versión de DB2 instalada

Últimamente me he topado con este motor de datos DB2 de IBM. Y para familiarizarme con el, he instalado en un PC de mi casa la versión express que se provee por parte del gigante azul como es llamada esta CIA. También he empezado a leer el libro (Conociendo DB2 Express v9.5) que es fruto del trabajo de  la comunidad alrededor de este software.

Una de las primeras dudas que me surgió al tratar de seguir las instrucciones del libro, fue: ¿Estoy usando la versión 9.5? Y la forma de saberlo (si no te fijaste como yo al descargarlo) es abrir una ventana de comandos (estoy usando Windows 7, cmd) y ejecutar el comando:

db2level

Después de eso supe que la versión que instale es la 10.1. Por lo que me hace sentido que haya cosas que ya no existan o estén de otra forma en esta versión como el Centro de Control. Cosa que aun estoy buscando, pero primero actualizare mi documentación.



Este es el link de descarga de DB2 Express
http://www-01.ibm.com/software/data/db2/express/

Dejo de todas maneras el link para descargar el E-book
Conociendo DB2 Express v9.5