Re: Diagrammi E-R (Entità – Relazione) – Basi di dati

#74117
robitex
Amministratore del forum
    Up
    0
    Down
    ::


    Ciao,
    non ho capito il problema.
    Io userei questo codice per ottenere il pdf già ritagliato per inserirlo poi come normale immagine nel documento pronciplae (con \includegraphics):
    `\documentclass{standalone}
    \usepackage[T1]{fontenc}
    \usepackage[utf8]{inputenc}

    \usepackage{tikz-er2}

    \usetikzlibrary{positioning}
    \usetikzlibrary{shadows}

    \tikzstyle{every entity} = [top color=white, bottom color=blue!30,
    draw=blue!50!black!100, drop shadow]
    \tikzstyle{every weak entity} = [drop shadow={shadow xshift=.7ex,
    shadow yshift=-.7ex}]
    \tikzstyle{every attribute} = [top color=white, bottom color=yellow!20,
    draw=yellow, node distance=7em, drop shadow]
    \tikzstyle{every relationship} = [top color=white, bottom color=red!20,
    draw=red!50!black!100, drop shadow]
    \tikzstyle{every isa} = [top color=white, bottom color=green!20,
    draw=green!50!black!100, drop shadow]

    \begin{document}
    \begin{tikzpicture}[node distance=8em, every edge/.style={link}]
    \node[entity] (persona) {Persona};
    \node[attribute] (pid)

    {\key{id\_persona}} edge (persona);
    \node[attribute] (name) [below left of=persona] {nombre} edge (persona);
    \node[multi attribute] (fono) [above of=persona] {fono} edge (persona);
    \node[attribute] (anex)

    {anexo} edge (fono);
    \node[attribute] (number) [below left of=fono, node distance=5em] {number} edge (fono);
    \node[attribute] (email) [above right of=persona] {email} edge (persona);
    \node[relationship] (pertenece)

    {Pertenece} edge node[auto,swap] {1:1} (persona);

    \node[entity] (depto)

    {Depto} edge node[auto,swap] {0:N} (pertenece);
    \node[attribute] (iddepto) [above of=depto] {\key{id\_depto}} edge (depto);
    \node[attribute] (dname) [above right of=depto] {d\_name} edge (depto);
    \node[rectangle, draw=black, fit=(pertenece), inner sep=0em] (ipertenece) {};
    \node[relationship] (tieneun) [below of=pertenece] {Ocupa} edge node[auto,swap] {1:1} (pertenece);

    \node[entity] (cargo)

    {Cargo} edge node[auto,swap] {0:N} (tieneun);
    \node[attribute] (idcargo)

    {\key{id\_cargo}} edge (cargo);
    \node[attribute] (cname) [above right of=cargo] {c\_name} edge (cargo);
    \node[attribute] (plevel) [below right of=cargo] {nivel} edge (cargo);

    \node[relationship] (responde) [below of=persona] {Responde} edge node[auto,swap] {1:N} (ipertenece);

    \node[entity] (pregunta) [below of=tieneun] {Pregunta};
    \node[attribute] (idpreg) [below of=pregunta] {\key{id\_preg}} edge (pregunta);
    \node[attribute] (ptexto) [below right of=pregunta] {p\_texto} edge (pregunta);
    \node[attribute] (pnumber)

    {p\_numero} edge (pregunta);

    \node[relationship] (tiene) [below of=responde] {Tiene} edge node[auto,swap] {1:N} (pregunta) edge node[auto,swap] {0:N} (responde);
    \node[rectangle, draw=black, fit=(tiene), inner sep=0em] (itiene) {};

    \node[entity] (alternativa)

    {Alternativa} edge node[auto,swap] {1:1} (tiene);
    \node[attribute] (idalt) [above of=alternativa] {\key{id\_altern}} edge (alternativa);
    \node[attribute] (atexto) [below of=alternativa] {a\_texto} edge (alternativa);
    \node[attribute] (anumber) [below right of=alternativa] {a\_numero} edge (alternativa);
    \end{tikzpicture}
    \end{document}`

    Il risultato è questo:

    [attachment=313]ertest.pdf[/attachment]

    Un saluto.
    R.

    Attachments:
    You must be logged in to view attached files.

    Go to top