I XML-Daten, die ich in eine SQL-TabelleXML-Daten und SQL Bulk Copy
<data>
<racedata>
<race>1</race>
<todays_cls>97</todays_cls>
</racedata>
<stats_data>
<stat type="ALL_WEATHR">
<starts>0</starts>
<wins>0</wins>
<places>0</places>
<shows>0</shows>
<earnings>0.00</earnings>
<paid>0.00</paid>
<roi />
</stat>
<stat type="AT_DST_CRS">
<starts>13</starts>
<wins>4</wins>
<places>1</places>
<shows>0</shows>
<earnings>93448.00</earnings>
<paid>12.00</paid>
<roi>23</roi>
</stat>
</stats_data>
</data>
Die racedata Einsätze Fein SqlBulkCopy bin mit Einfügen. Als Beispiel:
bc.DestinationTableName = "racedata";
bc.ColumnMappings.Add("race", "race");
bc.ColumnMappings.Add("todays_cls", "todays_cls");
Das Problem ist, wenn ich versuche, die stats_data einzufügen. Wenn ich versuche, die verschiedenen Stat-Kategorien wie ALL_WEATHR und AT_DST_CRS zu erfassen, erhalte ich eine Fehlermeldung, weil die Datenquelle und die Zieltabellenspalten denselben Namen haben müssen. ALL_WEATHR und AT_DST_CRS sind jedoch keine Spaltennamen, sie sind Werte. Sie erzählen, wie sich auf jeder Art von Oberfläche Gewinne, Orte, Shows usw. ergeben können. Wie würde ich sie in eine SQL-Tabelle einfügen?
beginnen Sie mit einem Diagramm Sie Datenbank zu machen. Jedes Objekt in SQL ist Teil einer Tabelle. Einige Tabellen werden zwei Spalten mit einem Namen wie ALL_WEATHR und einem Wert wie 0 und dann eine andere Zeile mit einem Namen AT_DST_CRS und einem Wert 13 sein. Andere Tabellen werden 5 oder 6 Spalten haben, wobei alle Zeilen die haben gleiche Daten in jeder Spalte. – jdweng
Bitte erklären Sie etwas mehr. Warum sollte ich diese zwei Einträge als Spalten haben, wenn sie Werte sind? Die Daten würden keinen Sinn ergeben. –
Häufig existieren zwei Spaltentabellen, wobei on ein Name und der andere ein Wert ist. Wir verwenden häufig Tabellen wie diese, um die ID-Nummer und den mit der ID verknüpften Namen zu enthalten. Dann haben wir andere Tabellen, die die ID-Nummer verwenden. In anderen Fällen haben wir die gleiche Datenbank auf mehreren Servern und die beiden Spaltentabellen hätten den ServerName = SERVER123, das StartDate = 1/1/16, das EndDate = 1/15/16. – jdweng