次のような4つの列を持つ1つのDataTableがあります。
StudentID CourseID SubjectCode Marks
------------ ---------- ------------- --------
1 100 MT400 80
2 100 MT400 79
3 100 MT400 88
ここでは、このデータテーブルをXMLテーブルとして渡すことにより、このデータテーブルをSqlサーバーテーブルに挿入しています。
DataTableの列名「Marks」を「SubjectMarks」に変更し、このDataTableをXMLテーブルとして渡すだけです。
DataTableをXMLテーブルとして渡す方法を知っています。しかし、DataTableの列名「Marks」を「SubjectMarks」として変更する方法は知りません。
これを試して:
dataTable.Columns["Marks"].ColumnName = "SubjectMarks";
以下を実行して、列の名前を変更します。
dataTable.Columns["ColumnName"].ColumnName = "newColumnName";
dtTempColumn.Columns["EXCELCOLUMNS"].ColumnName = "COLUMN_NAME";
dtTempColumn.AcceptChanges();
これを試して
"columns": [
{data: "id", name: "aaa", sortable: false},
{data: "userid", name: "userid", sortable: false},
{data: "group_id", name: "group_id", sortable: false},
{data: "group_name", name: "group_name", sortable: false},
{data: "group_member", name: "group_member"},
{data: "group_fee", name: "group_fee"},
{data: "dynamic_type", name: "dynamic_type"},
{data: "dynamic_id", name: "dynamic_id"},
{data: "content", name: "content", sortable: false},
{data: "images", name: "images", sortable: false},
{data: "money", name: "money"},
{data: "is_audit", name: "is_audit", sortable: false},
{data: "audited_at", name: "audited_at", sortable: false}
]
xMLを生成したら、XML <Marks>... content here </Marks>
タグを<SubjectMarks>... content here </SubjectMarks>tag
に置き換えるだけです。更新されたXMLをDBに渡します。
編集:ここで完全なプロセスを説明します
以下のようにXMLを生成します。
<NewDataSet>
<StudentMarks>
<StudentID>1</StudentID>
<CourseID>100</CourseID>
<SubjectCode>MT400</SubjectCode>
<Marks>80</Marks>
</StudentMarks>
<StudentMarks>
<StudentID>1</StudentID>
<CourseID>100</CourseID>
<SubjectCode>MT400</SubjectCode>
<Marks>79</Marks>
</StudentMarks>
<StudentMarks>
<StudentID>1</StudentID>
<CourseID>100</CourseID>
<SubjectCode>MT400</SubjectCode>
<Marks>88</Marks>
</StudentMarks>
</NewDataSet>
ここでは、次のようにXMLを文字列変数に割り当てることができます。
string strXML = DataSet.GetXML();
strXML = strXML.Replace ("<Marks>","<SubjectMarks>");
strXML = strXML.Replace ("<Marks/>","<SubjectMarks/>");
次に、strXMLをDBに渡します。それがあなたに役立つことを願っています。
つかいます:
dt.Columns["Name"].ColumnName = "xyz";
dt.AcceptChanges();
または
dt.Columns[0].ColumnName = "xyz";
dt.AcceptChanges();
これを使って
dataTable.Columns["OldColumnName"].ColumnName = "NewColumnName";