Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
[Microsoft SQL Compact 3.5 und Entity Framework] Beziehungen und Datentypen
Ayke
myCSharp.de - Member

Avatar #avatar-2293.gif


Dabei seit:
Beiträge: 643
Herkunft: Hamburg

Themenstarter:

[Microsoft SQL Compact 3.5 und Entity Framework] Beziehungen und Datentypen

beantworten | zitieren | melden

verwendetes Datenbanksystem: Microsoft SQL Compact 3.5

Hi,

wie ist das eingentlich mit den Datentypen ?
Ich kann immer eine max. Länge von 4000 für eine Spalte angeben.
Wenn ich jetzt ein nvchar(4000) erstelle heist das ich nur 4000
Zeichen in der Spalte speichern kann ? Wie ist das mit Image, da ist nur 16 erlaubt .Von was 16 ? Oder der Typ Binary. Da reichen wohl kaum 8000 Bytes für eine Spalte.

Auserdem habe ich 2 Tabellen

<TABELLE1>
ID
TEXT

<TABELLE2>
ID
IMAGE
ID_TABLE1

Ich möchte später in einen Gridview einen Text mit mehren Bildern dazu anzeigen.
Wie muss ich die beziehung mit Microsoft Entity erstellen ?
ID_TABLE1(TABELLE2)->ID(TABELLE1)
Dieser Beitrag wurde 4 mal editiert, zum letzten Mal von Ayke am .
private Nachricht | Beiträge des Benutzers
Ayke
myCSharp.de - Member

Avatar #avatar-2293.gif


Dabei seit:
Beiträge: 643
Herkunft: Hamburg

Themenstarter:

beantworten | zitieren | melden

Kommt schon das wisst ihr doch
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Ayke am .
private Nachricht | Beiträge des Benutzers
Taipi88
myCSharp.de - Member

Avatar #avatar-3220.jpg


Dabei seit:
Beiträge: 1.029
Herkunft: Mainz

beantworten | zitieren | melden

Hi,

die Binarytypen, etc. erlauben wirklich nicht mehr.

Image kann mehr ;-) http://msdn.microsoft.com/en-us/library/ms172424.aspx

Was bitte meinst du mit wie ?!? Im Visual Studio - Tabellendesigner - Kontextmenü - Beziehungen ?

Gruß und Guten Morgen

Achim
private Nachricht | Beiträge des Benutzers
trashkid2000
myCSharp.de - Member



Dabei seit:
Beiträge: 156

beantworten | zitieren | melden

Hallo,
Du redest vom Entity Framework, oder? Konnte mir nichts unter Microsoft Entity vorstellen.

Wenn Du die Relationen in der Datenbank erstellt hast (und diese sollten auf jeden Fall dort erstellt werden) und die Tabellen als Entitäten ins Modell übernimmst werden die Relationen zwischen den Tabellen automatisch vom Framework abgebildet.

Mit den Bildern: Ich würde wahrscheinlich das Bild nicht als Blob in der DB speichern, sondern nur den Link zu dem Bild. Es könnte sonst einfach mal lange dauern, das Bild zu speichern oder zu laden und wieder in ein Bild umzuwandeln.
LG, Marko
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15.852

beantworten | zitieren | melden

Zitat von trashkid2000
Mit den Bildern: Ich würde wahrscheinlich das Bild nicht als Blob in der DB speichern, sondern nur den Link zu dem Bild. Es könnte sonst einfach mal lange dauern, das Bild zu speichern oder zu laden

Dafür bietet das EF das TableSplitting an. Wurde zum Beispiel hier angesprochen.
private Nachricht | Beiträge des Benutzers
Ayke
myCSharp.de - Member

Avatar #avatar-2293.gif


Dabei seit:
Beiträge: 643
Herkunft: Hamburg

Themenstarter:

beantworten | zitieren | melden

Danke für eure Antworten. Ich mache jetzt die Beziehungen direkt in der Datenbank. Komme trotzdem nicht vorwärts.


public class
{
   string Vorname;
   string Nachname;
   bitmap[] Bilder;
}

Da es mehrere Bilder sind kann ich keine Tabelle erstellen die so aussieht.
Vorname (type nvchar)
Nachname (type nvchar)
Bilder (type image) das geht nicht es sind ja mehrere Bilder

Also habe ich mir gedacht ich mache 2 Tabellen

TABELLE 1
Vorname (type nvchar)
Nachname (type nvchar)
TABELLE 2

Bild

So dann habe ich versucht eine Beziehung hinzufügen.
Recht Maustaste auf Tabelle mit Vorname, Nachname | Tabelleneigenschaften | Beziehung hinzufügen.
Regel aktualisieren = NO ACTION
Regel löschen = NO ACTION
Primärschlüsselspalte = ID
Fremdschlüsselspalte = ??? Es sind mehre Bilder also auch mehrere Fremdschlüssel oder ??
private Nachricht | Beiträge des Benutzers
haarrrgh
myCSharp.de - Member



Dabei seit:
Beiträge: 208
Herkunft: Raum Köln

beantworten | zitieren | melden

Wenn es pro Person mehrere Bilder geben soll, dann ist es schon richtig, das Ganze in 2 Tabellen aufzuteilen.
Du schreibst auch daß Du irgendwo eine "Primärschlüsselspalte = ID" hast, aber aus Deinem Text geht nicht hervor in welcher Tabelle die ist.

Es sollte eigentlich so aussehen: Deine Personentabelle braucht einen eindeutigen Schlüssel, auf den in der Bildertabelle verwiesen wird.
PersonId (Primärschlüssel)
Vorname
Nachname
BildId (Primärschlüssel)
PersonId (Fremdschlüssel)
Bild
private Nachricht | Beiträge des Benutzers
Ayke
myCSharp.de - Member

Avatar #avatar-2293.gif


Dabei seit:
Beiträge: 643
Herkunft: Hamburg

Themenstarter:

beantworten | zitieren | melden

ok...
die Primärschlüsselspalte lege ich eingentlich immer an. Wollte die Beziehung bei der Personentabelle hinzufügen. Das war mein Fehler.
danke
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Ayke am .
private Nachricht | Beiträge des Benutzers