none
Diccionario de datos (Nuevo modelo) RRS feed

  • Pregunta

  • Hola, buenas días a todos,

    Miren, Estoy realizando creando un nuevo modelo de base de datos (estructura de tablas, relaciones, tipos de dato), todo esto a partir de una serie de bases de datos heterogéneas.

    En realidad, ya tengo mucho avanzado, tengo mi diseño de diagramas ya listo,

    y estoy empezando a realizar los scripts que generan desde la base de datos, como las tablas y sus llaves.

    Ahora, lo que deseo es tener un diccionario de datos, para que los programadores entiendan el nuevo modelo

    actualmente tengo un Excel que lleno con ejemplos, pero definitivamente me gustaría un diccionario de datos,

    además, tengo duda si a partir de un diccionario de datos, pudiera generar mi base, es decir

    ya no crearla con scripts manualmente.

    En realidad no se si estoy perdido jeje

    Estoy utilizando SQL SERVER 2012 ENTERPRISE.

    Baje una herramienta de "dictionary data" pero no reconoce los nuevos tipos de dato de sql2012 jeje.

    Puedo crear yo mis propias tablas para mi diccionario?  alguien tiene idea de cómo hacerlo?

    muchas gracias


    viernes, 22 de marzo de 2013 16:08

Respuestas

Todas las respuestas

  • Hola Kakaratoro,

    Podrías usar Microsoft Visio, que tiene la funcionalidad de ingeniería inversa: http://office.microsoft.com/es-es/visio-help/aplicar-ingenieria-inversa-a-una-base-de-datos-existente-en-un-modelo-de-base-de-datos-HA010115485.aspx Mediante la cuál podrás generar el modelo de BBDD, los campos de las tablas y las relaciones entre éstas.

    ¡Espero que te sirva!

    Saludos.


    Ferran Chopo
    MCPD Web, MCITP SQL Server
    Web: http://www.ferranchopo.com Twitter: @fchopo

    viernes, 22 de marzo de 2013 16:43
  • La empresa no cuenta con los recursos necesarios para adquirir la licencia, y la idea es

    también que los usuarios lean el diccionario siempre  por base de datos


    saludos

    viernes, 22 de marzo de 2013 16:45
  • Hola Kakaroto2012,

    Creo que el script que se encuentra en la siguiente dirección puede resolver tu problema: http://www.codeproject.com/Tips/501909/Generate-Data-Dictionary-from-SQL-Server

    Mírate este otro articulo, que te puede ser muy útil como idea: http://www.mssqltips.com/sqlservertip/1499/create-a-sql-server-data-dictionary-in-seconds-using-extended-properties/  . Se trata de usar las propiedades extendidas de SQL Server para poder generar un pequeño informe (en este caso en HTML).

    ¡Espero que te sirva!

    Saludos.


    Ferran Chopo
    MCPD Web, MCITP SQL Server
    Web: http://www.ferranchopo.com Twitter: @fchopo

    sábado, 23 de marzo de 2013 18:32
  • Hola. ¿Resolviste el problema? ¿Revisaste lo que proponía Ferrán?

    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.com
    Sígueme en twitter en http://twitter.com/qwalgrande

    jueves, 28 de marzo de 2013 11:59
    Moderador
  • Hola. Complementando lo que dice Ferrán, revisa estas tres entradas en Codeplex, a ver cual se adecua mejor a tu situación:

    Para lo que valga, yo he usado el primero un par de ocasiones y me ha servido.

    Nos cuentas...

    Saludos,


    Guillermo Taylor F.
    IT Pro & Xbox gamer
    My blog

    lunes, 1 de abril de 2013 14:32
  •  Miren, estoy haciendo lo siguiente, por favor, ustedes digan me si estoy haciendo lo correcto, o es mala práctica:

    Como vi que SQL tiene sus tablas:

    sys.tablas

    sys.schemas

    sys.columns etc...

    ahora hice lo siguiente

    crear una tabla para tener la Descripción de mis n tablas que tendrá mi base de datos.

    Por ejemplo si tengo mil tablas, necesito una tabla que me las describa, por lo tanto hice un nuevo schema llamado

    Dictionary, y en ése  me base para hacer mi primera tabla de descripciones.

    PRIMERA TABLA LLAMADA  TABLEDESCRIPTIONS

    ID_TABLE = OBJECT_ID   que me dá la base de datos

    ID_LANGUAGE  = es porque la base de datos estará en Ingles, y necesitamos el español para su traducción, además que a                              futuro se tengan distintas traducciónes (no creo)

    Description:  Me dará la descripción de la tabla en el lenguaje seleccionado  =)

    COLUMNDESCRIPCIONS:

    ID_TABLE
    ID_COLUMN
    ID_LANGUAGE
    DESCRIPCIÓN


    POR CADA COLUMNA EN MIS n TABLAS, TENDRÉ UNA DESCRIPCIÓN EN ESPAÑOL QUE ME AYUDE PARA QUE SIRVE O QUE CONTIENE

    COLUMNTRANSLATION

    ID_TABLE
    ID_COLUMN
    ID_LANGUAGE
    TRANSLATION

    Y ésta última tabla me servirá para tener la traducción al español de cada columna de mis n tablas.

    Ahora bien, hice un procedure que regresa un 'table expression' dandome la traducción y su descripción...

    select * from [Dictionary].[InformationColumns]
    where tablename = 'instruments'

    ID_Table	TableName	ID_Column	columnName	Translation		ID_SCHEMA	Description
    949578421	Instruments	1	ID_Instrument		ID_Instrumento	6	IDENTIFICADOR AUTONÚMERICO DE LA TABLA
    949578421	Instruments	2	ID_TV			ID_TipoValor		6	Son todas las claves para identificar a los Mercados. TV =  {M, S, CBIC, BI, I, PIC, IQ, IM, 95, 96...}
    949578421	Instruments	3	ISIN				ISIN				6	El código ISIN (International Securities Identification Number) está desarrollado en el estándar internacional ISO 6166 y se utiliza para la identificación de valores mobiliarios. Es un código que identifica unívocamente un valor mobiliario a nivel i
    949578421	Instruments	4	Series			Serie			6	El número de serie del ISIN normalmente es la fecha vencimiento, empezando por Año, mes, día  donde 241205 es el número de serie de un Bono que vence el 5 de dic del 2024
    949578421	Instruments	5	Emission			Emision			6	
    949578421	Instruments	6	Issuer			Emisora			6	
    949578421	Instruments	7	DeploymentDate	Fecha Colocación	6	Fecha en que colocan o dan de alta el ISIN 
    949578421	Instruments	8	MaturityDate		Fecha Vencimiento	6	Fecha en que vence el producto
    949578421	Instruments	9	PlacementAgent	Agente Colocador	6	
    949578421	Instruments	10	ID_Company		Empresa Valuadora6	La valuadora esta dada de alta como Empresa (Alias) la cual se relaciona para indicar que es quien nos está proveyendo los ISINs
    949578421	Instruments	11	ID_StatusRow		StatusRegistro		6	Indica si el registro está o no Activo ("Borrado lógico").    0 = inactivo, borrado;  1 = Activo

    cómo ven? , a eso le podría llamar mi diccionario de datos?


    saludos







    lunes, 1 de abril de 2013 14:47
  • http://elpaladintecnologico.blogspot.com/2013/04/documentar-tu-base-de-datos-es-sencillo.html

    Hola, en el link superior hablo sobre un producto para documentar los objetos de la base de datos y que la gente pueda acceder vía web.

    Te sirve ?


    MVP MCT MCTS Daniel Calbimonte

    http://elpaladintecnologico.blogspot.com

    martes, 2 de abril de 2013 14:50
  • ya lo había visto, pero no me gustó mucho  =)

    cómo ves lo que hice?


    saludos

    martes, 2 de abril de 2013 14:52
  • Hola. Por lo que se ve, parece que lo que hiciste cumple con el cometido... Si funciona para ti, adelante!

    Saludos,


    Guillermo Taylor F.
    IT Pro & Xbox gamer
    My blog

    • Marcado como respuesta kakaroto2012 martes, 2 de abril de 2013 15:57
    martes, 2 de abril de 2013 15:14
  • ok, tengo tu aprobación, sobre tu cadáver he...

    saludos

    martes, 2 de abril de 2013 15:57