{"id":55000289,"date":"2021-10-01T00:00:00","date_gmt":"2022-02-15T13:17:16","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=289"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Beispieldaten_fuer_ein_EDM_generieren","status":"publish","type":"post","link":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/","title":{"rendered":"Beispieldaten f&uuml;r ein EDM generieren"},"content":{"rendered":"<p><b>Im Artikel &#8220;Beispieldaten generieren mit Bogus&#8221; haben  wir gezeigt, wie Sie grunds&auml;tzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verkn&uuml;pften Tabellen gespeichert werden sollen &#8211; also beispielsweise in zwei Tabellen namens &#8220;Kunden&#8221; und &#8220;Bestellungen&#8221;, wobei die Tabelle &#8220;Bestellungen&#8221; &uuml;ber ein Fremdschl&uuml;sselfeld namens &#8220;KundeID&#8221; mit der Tabelle &#8220;Kunden&#8221; verkn&uuml;pft ist. Wie das gelingt, und welche Techniken noch interessant sind f&uuml;r das Schreiben von Beispieldaten &uuml;ber ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.<\/b><\/p>\n<h2>Beispielprojekt erstellen<\/h2>\n<p>Wir erstellen ein einfaches Beispielprojekt des Typs <b>WPF-App <\/b>(f&uuml;r <b>Visual Basic<\/b>) namens <b>BeispieldatenGenerieren<\/b>. Diesem f&uuml;gen wir ein Entity Data Model hinzu, das wir <b>BeispieldatenContext <\/b>nennen (Men&uuml;eintrag <b>Projekt|Neues Element hinzuf&uuml;gen&#8230;<\/b>) und das den Typ <b>Leeres Code First-Modell <\/b>erhalten soll. F&uuml;r dieses Projekt legen wir als Erstes eine Klasse namens <b>Kunde <\/b>an, die wie folgt aussieht:<\/p>\n<pre>Partial Public Class Kunde\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property ID<span style=\"color:blue;\"> As <\/span>Int32\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Vorname<span style=\"color:blue;\"> As String<\/span>\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Nachname<span style=\"color:blue;\"> As String<\/span>\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Firma<span style=\"color:blue;\"> As String<\/span>\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Strasse<span style=\"color:blue;\"> As String<\/span>\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property PLZ<span style=\"color:blue;\"> As String<\/span>\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Ort<span style=\"color:blue;\"> As String<\/span>\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Land<span style=\"color:blue;\"> As String<\/span>\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property EMail<span style=\"color:blue;\"> As String<\/span>\r\n<span style=\"color:blue;\">End Class<\/span><\/pre>\n<p>Au&szlig;erdem f&uuml;gen wir eine Klasse namens <b>Bestellung <\/b>hinzu:<\/p>\n<pre>Partial Public Class Bestellung\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property ID<span style=\"color:blue;\"> As <\/span>Int32\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Bestelldatum<span style=\"color:blue;\"> As Date<\/span>Time\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Kunde<span style=\"color:blue;\"> As <\/span>Kunde\r\n<span style=\"color:blue;\">End Class<\/span><\/pre>\n<p>Damit wir auch eine m:n-Beziehung abbilden k&ouml;nnen, legen wir noch eine Klasse <b>Produkt <\/b>und eine Klasse <b>Bestellpositionen <\/b>an:<\/p>\n<pre>Partial Public Class Bestellposition\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property ID<span style=\"color:blue;\"> As <\/span>Int32\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property ProduktID<span style=\"color:blue;\"> As <\/span>Int32\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property BestellungID<span style=\"color:blue;\"> As <\/span>Int32\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Produkt<span style=\"color:blue;\"> As <\/span>Produkt\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Bestellung<span style=\"color:blue;\"> As <\/span>Bestellung\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Einzelpreis<span style=\"color:blue;\"> As Decimal<\/span>\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Menge<span style=\"color:blue;\"> As <\/span>Int32\r\n<span style=\"color:blue;\">End Class<\/span>\r\nPartial Public Class Produkt\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property ID<span style=\"color:blue;\"> As <\/span>Int32\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Produktname<span style=\"color:blue;\"> As String<\/span>\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Einzelpreis<span style=\"color:blue;\"> As Decimal<\/span>\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Bestellpositionen<span style=\"color:blue;\"> As <\/span>ICollection(Of Bestellposition)\r\n<span style=\"color:blue;\">End Class<\/span><\/pre>\n<p>Der Klasse <b>BeispieldatenContext.vb <\/b>f&uuml;gen wir eine <b>DbSet<\/b>-Definition f&uuml;r die vorgestellten Klasse hinzu. Au&szlig;erdem legen wir in der Konstruktor-Methode <b>New <\/b>fest, dass die noch zu definierende Klasse <b>BeispieldatenInitializer <\/b>zum Initialisieren der Datenbank verwendet werden soll:<\/p>\n<pre><span style=\"color:blue;\">Public Class<\/span> BeispieldatenContext\r\n     Inherits DbContext\r\n     <span style=\"color:blue;\">Public <\/span>Sub New()\r\n         MyBase.New(\"name=BeispieldatenContext\")\r\n         Database.SetInitializer(<span style=\"color:blue;\">New<\/span> BeispieldatenInitializer())\r\n     End Sub\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Kunden()<span style=\"color:blue;\"> As <\/span>DbSet(Of Kunde)\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Bestellungen()<span style=\"color:blue;\"> As <\/span>DbSet(Of Bestellung)\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Produkte()<span style=\"color:blue;\"> As <\/span>DbSet(Of Produkt)\r\n     <span style=\"color:blue;\">Public <\/span>Overridable Property Bestellpositionen()<span style=\"color:blue;\"> As <\/span>DbSet(Of Bestellposition)\r\n<span style=\"color:blue;\">End Class<\/span><\/pre>\n<p>Schlie&szlig;lich legen wir hier noch fest, dass die Elemente der Klassen <b>Kunde<\/b>, <b>Bestellung<\/b>, <b>Bestellposition <\/b>und <b>Produkt <\/b>in den Tabellen <b>Kunden<\/b>, <b>Bestellungen<\/b>, <b>Bestellpositionen <\/b>und <b>Produkte <\/b>landen sollen:<\/p>\n<pre>Protected Overrides Sub OnModelCreating(modelBuilder<span style=\"color:blue;\"> As <\/span>DbModelBuilder)\r\n     MyBase.OnModelCreating(modelBuilder)\r\n     modelBuilder.Entity(Of Kunde)().ToTable(\"Kunden\")\r\n     modelBuilder.Entity(Of Bestellung)().ToTable(\"Bestellungen\")\r\n     modelBuilder.Entity(Of Bestellposition)().ToTable(\"Bestellpositionen\")\r\n     modelBuilder.Entity(Of Produkt)().ToTable(\"Produkte\")\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<h2>Bogus zum Projekt hinzuf&uuml;gen<\/h2>\n<p>Danach f&uuml;gen wir das Bogus-Paket zum Projekt hinzu. Dazu w&auml;hlen Sie den Men&uuml;eintrag <b>Projekt|NuGet-Pakete verwalten <\/b>aus. Dies &ouml;ffnet ein neues Fenster, indem Sie zum Bereich <b>Durchsuchen <\/b>wechseln. Hier geben Sie im Suchfeld den Text <b>Bogus <\/b>ein und finden gleich das passende Paket von <b>Brian Chavez <\/b>vor.<\/p>\n<p>Markieren Sie dieses und starten die Installation mit einem Klick auf die Schaltfl&auml;che <b>Installieren<\/b> (siehe Bild 1).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2021_05\/pic_289_001.png\" alt=\"Hinzuf&uuml;gen des Pakets Bogus\" width=\"700\" height=\"302,2577\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 1: Hinzuf&uuml;gen des Pakets Bogus<\/span><\/b><\/p>\n<h2>Kundentabelle mit Bogus f&uuml;llen<\/h2>\n<p>Danach starten wir direkt mit der Anwendung. Wir wollen erst einmal nur Daten in der Tabelle <b>Kunden <\/b>anlegen. Dazu f&uuml;gen wir der Datenbank-Initialisierer-Klasse <b>Beispieldateninitialisierer <\/b>wie folgt eine <b>Seed<\/b>-Methode hinzu:<\/p>\n<pre><span style=\"color:blue;\">Public Class<\/span> BeispieldatenInitializer\r\n     Inherits DropCreateDatabaseAlways(Of BeispieldatenContext)\r\n     Protected Overrides Sub Seed(context<span style=\"color:blue;\"> As <\/span>BeispieldatenContext)\r\n         <span style=\"color:blue;\">Dim <\/span>Kunden<span style=\"color:blue;\"> As <\/span>List(Of Kunde) = <span style=\"color:blue;\">New<\/span> List(Of Kunde)\r\n         <span style=\"color:blue;\">Dim <\/span>objFaker<span style=\"color:blue;\"> As <\/span>Bogus.Faker(Of Kunde) = <span style=\"color:blue;\">New<\/span> Bogus.Faker(Of Kunde)(\"de\")\r\n         objFaker.Rules(Function(f, k)<span style=\"color:blue;\"> As Object<\/span>\r\n                            k.Vorname = f.Name.FirstName\r\n                            k.Nachname = f.Name.LastName\r\n                            k.Firma = f.Company.CompanyName\r\n                            k.Strasse = f.Address.StreetAddress\r\n                            k.PLZ = f.Address.ZipCode\r\n                            k.Ort = f.Address.City\r\n                            k.Land = \"Deutschland\"\r\n                            k.EMail = f.Internet.Email\r\n                        End Function)\r\n         Kunden = objFaker.Generate(1000)\r\n         context.Kunden.AddRange(Kunden)\r\n         MyBase.Seed(context)\r\n     End Sub\r\n<span style=\"color:blue;\">End Class<\/span><\/pre>\n<p>Die <b>Seed<\/b>-Methode deklariert und initialisiert ein <b>List<\/b>-Objekt namens <b>Kunden <\/b>f&uuml;r Elemente des Typs <b>Kunde<\/b>. Dann erstellt sie ein sogenanntes <b>Faker<\/b>-Objekt namens <b>objFaker<\/b>, mit dem wir Elemente des Typs <b>Kunde <\/b>f&uuml;llen wollen. Damit diese sp&auml;ter beispielsweise deutsche Adressdaten verwendet und keine amerikanischen, h&auml;ngen wir noch den Parameter <b>(&#8220;de&#8221;) <\/b>an.<\/p>\n<p>Danach legen wir mit der Methode <b>Rules <\/b>die Regeln fest, nach denen neue Elemente mit Daten gef&uuml;llt werden sollen. Als Parameter f&uuml;r die <b>Rules<\/b>-Methode geben wir einen <b>Function<\/b>-Lambda-Ausdruck an. Dieser enth&auml;lt die Zuweisungen der verschiedenen Klassen und Funktionen von Bogus (<b>f<\/b>)  zu den Eigenschaften des zu erzeugenden Elements (<b>k<\/b>).<\/p>\n<p>Die Eigenschaft <b>Vorname <\/b>f&uuml;llen wir beispielsweise mit der Funktion <b>FirstName <\/b>der <b>Name<\/b>-Klasse. Wir m&ouml;chten nur Kunden mit deutscher Adresse hinzuf&uuml;gen, also stellen wir f&uuml;r das Feld <b>Land <\/b>fix den Wert <b>Deutschland <\/b>ein. Nachdem wir die Zuweisung f&uuml;r alle Eigenschaften erstellt haben, rufen wir die <b>Generate<\/b>-Methode des Objekts aus <b>objFaker <\/b>auf und &uuml;bergeben dieser als Parameter die Anzahl der zu erstellenden Elemente und weisen diese dem <b>List<\/b>-Objekt <b>Kunden <\/b>zu.<\/p>\n<p>Diese Liste schreiben wir schlie&szlig;lich mit der <b>AddRange<\/b>-Methode in das <b>DbSet<\/b>-Element <b>Kunden<\/b>. Damit die Daten noch in die zugrunde liegende Tabelle der Datenbank geschrieben werden, rufen wir schlie&szlig;lich noch die <b>Seed<\/b>-Methode f&uuml;r den Datenbankkontext aus <b>context <\/b>auf.<\/p>\n<h2>Daten beim Start der Anwendung erstellen<\/h2>\n<div class=\"rcp_restricted\"><p><span style=\"color: #ff0000\">M&ouml;chten Sie weiterlesen? Dann l&ouml;sen Sie Ihr Ticket!<\/span><br \/>\n<span style=\"color: #ff0000\">Hier geht es zur Bestellung des Jahresabonnements des Magazins <strong>Visual Basic Entwickler<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000\"><a style=\"color: #ff0000\" href=\"https:\/\/shop.minhorst.com\/magazine\/363\/visual-basic-entwickler-jahresabonnement?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000\">Danach greifen Sie sofort auf <strong>alle rund 200 Artikel<\/strong> unseres Angebots zu - auch auf diesen hier!<\/span><br \/>\n<span style=\"color: #000000\">Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:<\/span><\/p>\n<\/div>\n\n\t\n\t<form id=\"rcp_login_form\"  class=\"rcp_form\" method=\"POST\" action=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000289\/\">\n\n\t\t\n\t\t<fieldset class=\"rcp_login_data\">\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_login\">Username or Email<\/label>\n\t\t\t\t<input name=\"rcp_user_login\" id=\"rcp_user_login\" class=\"required\" type=\"text\"\/>\n\t\t\t<\/p>\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_pass\">Password<\/label>\n\t\t\t\t<input name=\"rcp_user_pass\" id=\"rcp_user_pass\" class=\"required\" type=\"password\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t\t<p>\n\t\t\t\t<input type=\"checkbox\" name=\"rcp_user_remember\" id=\"rcp_user_remember\" value=\"1\"\/>\n\t\t\t\t<label for=\"rcp_user_remember\">Remember me<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/data\/wp\/v2\/posts\/55000289?rcp_action=lostpassword\"><\/a><\/p>\n\t\t\t<p>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_action\" value=\"login\"\/>\n\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000289\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"a4d23571dd\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Login\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t<\/fieldset>\n\n\t\t\n\t<\/form>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Im Artikel &#8220;Beispieldaten generieren mit Bogus&#8221; haben  wir gezeigt, wie Sie grunds&auml;tzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verkn&uuml;pften Tabellen gespeichert werden sollen &#8211; also beispielsweise in zwei Tabellen namens &#8220;Kunden&#8221; und &#8220;Bestellungen&#8221;, wobei die Tabelle &#8220;Bestellungen&#8221; &uuml;ber ein Fremdschl&uuml;sselfeld namens &#8220;KundeID&#8221; mit der Tabelle &#8220;Kunden&#8221; verkn&uuml;pft ist. Wie das gelingt, und welche Techniken noch interessant sind f&uuml;r das Schreiben von Beispieldaten &uuml;ber ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[662021,66052021,44000008,44000025],"tags":[],"yst_prominent_words":[],"class_list":["post-55000289","post","type-post","status-publish","format-standard","hentry","category-662021","category-66052021","category-Datenzugriffstechnik","category-VBAProgrammierung"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.9 - aioseo.com -->\n\t<meta name=\"description\" content=\"Im Artikel &quot;Beispieldaten generieren mit Bogus&quot; haben wir gezeigt, wie Sie grunds\u00e4tzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verkn\u00fcpften Tabellen gespeichert werden sollen - also beispielsweise in zwei Tabellen namens &quot;Kunden&quot; und &quot;Bestellungen&quot;, wobei die Tabelle &quot;Bestellungen&quot; \u00fcber ein Fremdschl\u00fcsselfeld namens &quot;KundeID&quot; mit der Tabelle &quot;Kunden&quot; verkn\u00fcpft ist. Wie das gelingt, und welche Techniken noch interessant sind f\u00fcr das Schreiben von Beispieldaten \u00fcber ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Andr\u00e9 Minhorst\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.9\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Visual Basic Entwickler - Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Beispieldaten f\u00fcr ein EDM generieren - Visual Basic Entwickler\" \/>\n\t\t<meta property=\"og:description\" content=\"Im Artikel &quot;Beispieldaten generieren mit Bogus&quot; haben wir gezeigt, wie Sie grunds\u00e4tzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verkn\u00fcpften Tabellen gespeichert werden sollen - also beispielsweise in zwei Tabellen namens &quot;Kunden&quot; und &quot;Bestellungen&quot;, wobei die Tabelle &quot;Bestellungen&quot; \u00fcber ein Fremdschl\u00fcsselfeld namens &quot;KundeID&quot; mit der Tabelle &quot;Kunden&quot; verkn\u00fcpft ist. Wie das gelingt, und welche Techniken noch interessant sind f\u00fcr das Schreiben von Beispieldaten \u00fcber ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2022-02-15T13:17:16+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"-001-11-30T00:00:00+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Beispieldaten f\u00fcr ein EDM generieren - Visual Basic Entwickler\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Im Artikel &quot;Beispieldaten generieren mit Bogus&quot; haben wir gezeigt, wie Sie grunds\u00e4tzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verkn\u00fcpften Tabellen gespeichert werden sollen - also beispielsweise in zwei Tabellen namens &quot;Kunden&quot; und &quot;Bestellungen&quot;, wobei die Tabelle &quot;Bestellungen&quot; \u00fcber ein Fremdschl\u00fcsselfeld namens &quot;KundeID&quot; mit der Tabelle &quot;Kunden&quot; verkn\u00fcpft ist. Wie das gelingt, und welche Techniken noch interessant sind f\u00fcr das Schreiben von Beispieldaten \u00fcber ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/#blogposting\",\"name\":\"Beispieldaten f\\u00fcr ein EDM generieren - Visual Basic Entwickler\",\"headline\":\"Beispieldaten f&uuml;r ein EDM generieren\",\"author\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"..\\\/fileadmin\\\/_temp_\\\/2021_05\\\/pic_289_001.png\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/#articleImage\"},\"datePublished\":\"2021-10-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"inLanguage\":\"de-DE\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/#webpage\"},\"articleSection\":\"2021, 5\\\/2021, Datenzugriffstechnik, VBA-Programmierung\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vbentwickler.de\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/#listItem\",\"name\":\"2021\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/#listItem\",\"position\":2,\"name\":\"2021\",\"item\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/5\\\/2021\\\/#listItem\",\"name\":\"5\\\/2021\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/5\\\/2021\\\/#listItem\",\"position\":3,\"name\":\"5\\\/2021\",\"item\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/5\\\/2021\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/#listItem\",\"name\":\"Beispieldaten f&uuml;r ein EDM generieren\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/#listItem\",\"name\":\"2021\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/#listItem\",\"position\":4,\"name\":\"Beispieldaten f&uuml;r ein EDM generieren\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/5\\\/2021\\\/#listItem\",\"name\":\"5\\\/2021\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\",\"name\":\"Datenbankentwickler\",\"description\":\"Das Magazin f\\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/cropped-header_vbe-1.png\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/#organizationLogo\",\"width\":664,\"height\":225},\"image\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/#organizationLogo\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Andr\\u00e9 Minhorst\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/#webpage\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/\",\"name\":\"Beispieldaten f\\u00fcr ein EDM generieren - Visual Basic Entwickler\",\"description\":\"Im Artikel \\\"Beispieldaten generieren mit Bogus\\\" haben wir gezeigt, wie Sie grunds\\u00e4tzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verkn\\u00fcpften Tabellen gespeichert werden sollen - also beispielsweise in zwei Tabellen namens \\\"Kunden\\\" und \\\"Bestellungen\\\", wobei die Tabelle \\\"Bestellungen\\\" \\u00fcber ein Fremdschl\\u00fcsselfeld namens \\\"KundeID\\\" mit der Tabelle \\\"Kunden\\\" verkn\\u00fcpft ist. Wie das gelingt, und welche Techniken noch interessant sind f\\u00fcr das Schreiben von Beispieldaten \\u00fcber ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.\",\"inLanguage\":\"de-DE\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Beispieldaten_fuer_ein_EDM_generieren\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"datePublished\":\"2021-10-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#website\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/\",\"name\":\"Datenbankentwickler\",\"description\":\"Das Magazin f\\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\",\"inLanguage\":\"de-DE\",\"publisher\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Beispieldaten f\u00fcr ein EDM generieren - Visual Basic Entwickler","description":"Im Artikel \"Beispieldaten generieren mit Bogus\" haben wir gezeigt, wie Sie grunds\u00e4tzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verkn\u00fcpften Tabellen gespeichert werden sollen - also beispielsweise in zwei Tabellen namens \"Kunden\" und \"Bestellungen\", wobei die Tabelle \"Bestellungen\" \u00fcber ein Fremdschl\u00fcsselfeld namens \"KundeID\" mit der Tabelle \"Kunden\" verkn\u00fcpft ist. Wie das gelingt, und welche Techniken noch interessant sind f\u00fcr das Schreiben von Beispieldaten \u00fcber ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.","canonical_url":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/#blogposting","name":"Beispieldaten f\u00fcr ein EDM generieren - Visual Basic Entwickler","headline":"Beispieldaten f&uuml;r ein EDM generieren","author":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"publisher":{"@id":"https:\/\/vbentwickler.de\/#organization"},"image":{"@type":"ImageObject","url":"..\/fileadmin\/_temp_\/2021_05\/pic_289_001.png","@id":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/#articleImage"},"datePublished":"2021-10-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00","inLanguage":"de-DE","mainEntityOfPage":{"@id":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/#webpage"},"isPartOf":{"@id":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/#webpage"},"articleSection":"2021, 5\/2021, Datenzugriffstechnik, VBA-Programmierung"},{"@type":"BreadcrumbList","@id":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/vbentwickler.de#listItem","position":1,"name":"Home","item":"https:\/\/vbentwickler.de","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2021\/#listItem","name":"2021"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2021\/#listItem","position":2,"name":"2021","item":"https:\/\/vbentwickler.de\/category\/2021\/","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2021\/5\/2021\/#listItem","name":"5\/2021"},"previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2021\/5\/2021\/#listItem","position":3,"name":"5\/2021","item":"https:\/\/vbentwickler.de\/category\/2021\/5\/2021\/","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/#listItem","name":"Beispieldaten f&uuml;r ein EDM generieren"},"previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2021\/#listItem","name":"2021"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/#listItem","position":4,"name":"Beispieldaten f&uuml;r ein EDM generieren","previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2021\/5\/2021\/#listItem","name":"5\/2021"}}]},{"@type":"Organization","@id":"https:\/\/vbentwickler.de\/#organization","name":"Datenbankentwickler","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","url":"https:\/\/vbentwickler.de\/","logo":{"@type":"ImageObject","url":"https:\/\/vbentwickler.de\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","@id":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/#organizationLogo","width":664,"height":225},"image":{"@id":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/#organizationLogo"}},{"@type":"Person","@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author","url":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","@id":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","width":96,"height":96,"caption":"Andr\u00e9 Minhorst"}},{"@type":"WebPage","@id":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/#webpage","url":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/","name":"Beispieldaten f\u00fcr ein EDM generieren - Visual Basic Entwickler","description":"Im Artikel \"Beispieldaten generieren mit Bogus\" haben wir gezeigt, wie Sie grunds\u00e4tzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verkn\u00fcpften Tabellen gespeichert werden sollen - also beispielsweise in zwei Tabellen namens \"Kunden\" und \"Bestellungen\", wobei die Tabelle \"Bestellungen\" \u00fcber ein Fremdschl\u00fcsselfeld namens \"KundeID\" mit der Tabelle \"Kunden\" verkn\u00fcpft ist. Wie das gelingt, und welche Techniken noch interessant sind f\u00fcr das Schreiben von Beispieldaten \u00fcber ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.","inLanguage":"de-DE","isPartOf":{"@id":"https:\/\/vbentwickler.de\/#website"},"breadcrumb":{"@id":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/#breadcrumblist"},"author":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"creator":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"datePublished":"2021-10-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00"},{"@type":"WebSite","@id":"https:\/\/vbentwickler.de\/#website","url":"https:\/\/vbentwickler.de\/","name":"Datenbankentwickler","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","inLanguage":"de-DE","publisher":{"@id":"https:\/\/vbentwickler.de\/#organization"}}]},"og:locale":"de_DE","og:site_name":"Visual Basic Entwickler - Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","og:type":"article","og:title":"Beispieldaten f\u00fcr ein EDM generieren - Visual Basic Entwickler","og:description":"Im Artikel &quot;Beispieldaten generieren mit Bogus&quot; haben wir gezeigt, wie Sie grunds\u00e4tzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verkn\u00fcpften Tabellen gespeichert werden sollen - also beispielsweise in zwei Tabellen namens &quot;Kunden&quot; und &quot;Bestellungen&quot;, wobei die Tabelle &quot;Bestellungen&quot; \u00fcber ein Fremdschl\u00fcsselfeld namens &quot;KundeID&quot; mit der Tabelle &quot;Kunden&quot; verkn\u00fcpft ist. Wie das gelingt, und welche Techniken noch interessant sind f\u00fcr das Schreiben von Beispieldaten \u00fcber ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.","og:url":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/","og:image":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","og:image:secure_url":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","article:published_time":"2022-02-15T13:17:16+00:00","article:modified_time":"-001-11-30T00:00:00+00:00","twitter:card":"summary_large_image","twitter:title":"Beispieldaten f\u00fcr ein EDM generieren - Visual Basic Entwickler","twitter:description":"Im Artikel &quot;Beispieldaten generieren mit Bogus&quot; haben wir gezeigt, wie Sie grunds\u00e4tzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verkn\u00fcpften Tabellen gespeichert werden sollen - also beispielsweise in zwei Tabellen namens &quot;Kunden&quot; und &quot;Bestellungen&quot;, wobei die Tabelle &quot;Bestellungen&quot; \u00fcber ein Fremdschl\u00fcsselfeld namens &quot;KundeID&quot; mit der Tabelle &quot;Kunden&quot; verkn\u00fcpft ist. Wie das gelingt, und welche Techniken noch interessant sind f\u00fcr das Schreiben von Beispieldaten \u00fcber ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.","twitter:image":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png"},"aioseo_meta_data":{"post_id":"55000289","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2024-01-30 16:23:23","updated":"2026-05-16 08:55:28","ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\/category\/2021\/\" title=\"2021\">2021<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\/category\/2021\/5\/2021\/\" title=\"5\/2021\">5\/2021<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tBeispieldaten f\u00fcr ein EDM generieren\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/vbentwickler.de"},{"label":"2021","link":"https:\/\/vbentwickler.de\/category\/2021\/"},{"label":"5\/2021","link":"https:\/\/vbentwickler.de\/category\/2021\/5\/2021\/"},{"label":"Beispieldaten f&uuml;r ein EDM generieren","link":"https:\/\/vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\/"}],"_links":{"self":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000289","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/comments?post=55000289"}],"version-history":[{"count":0,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000289\/revisions"}],"wp:attachment":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/media?parent=55000289"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/categories?post=55000289"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/tags?post=55000289"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/yst_prominent_words?post=55000289"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}