web-dev-qa-db-ja.com

DataTableの列名を変更する方法は?

次のような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」として変更する方法は知りません。

105
thevan

これを試して:

dataTable.Columns["Marks"].ColumnName = "SubjectMarks";
227
Moon

以下を実行して、列の名前を変更します。

dataTable.Columns["ColumnName"].ColumnName = "newColumnName";
25
Saurabh
 dtTempColumn.Columns["EXCELCOLUMNS"].ColumnName = "COLUMN_NAME";                        
 dtTempColumn.AcceptChanges();
5
Hardik Shah

これを試して

"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}

]

enter image description here

1
tanteng

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に渡します。それがあなたに役立つことを願っています。

1
Pankaj Agarwal

つかいます:

dt.Columns["Name"].ColumnName = "xyz";
dt.AcceptChanges();

または

dt.Columns[0].ColumnName = "xyz";
dt.AcceptChanges();
0
Subhash Saini

これを使って

dataTable.Columns["OldColumnName"].ColumnName = "NewColumnName";
0
Anurag Deokar