PDA

View Full Version : اضافه کردن یک ستون به Datatable



مهدی رحیم زاده
یک شنبه 14 بهمن 1386, 07:29 صبح
سلام دوستای عزیزم
من می خوام که سه تا ستون به یک Datatable اضافه کنم . برای این کار از سه تا دیتاتیبل استفاده کردم . یعنی اول با این کد سه تا Datatable رو با داده های مورد نظر پر کردم .

//نوع وام
DT_TyLoan = dbc.getdata("select Sateb_Temp_Loan.TyLoan from Sateb_Temp_Loan,Sateb_Request where Sateb_Temp_Loan.TyLoCode=Sateb_Request.TyLoCode");
//بانک
DT_BaName = dbc.getdata("select Sateb_Temp_Bank.BaName from Sateb_Temp_Bank,Sateb_Request where Sateb_Temp_Bank.BaCode=Sateb_Request.BaCode");
//شعبه
DT_BrName = dbc.getdata("select Sateb_Temp_Branch.BrName from Sateb_Temp_Branch,Sateb_Request where Sateb_Temp_Branch.BrCode=Sateb_Request.BrCode");

بعد با این کد می خوام مقدار این سه تا Datatable رو به Datatable اصلی خودم اضافه کنم :

FDdt.Columns.Add(DT_TyLoan.Columns["TyLoan"]);
FDdt.Columns.Add(DT_BaName.Columns["BaName"]);
FDdt.Columns.Add(DT_BrName.Columns["BrName"]);

اما این Error رو میده :

Column 'TyLoan' already belongs to another DataTable.

e-shahshahani
یک شنبه 14 بهمن 1386, 09:31 صبح
با کد زیر اطلاعات منتقل نمیشه ها!

FDdt.Columns.Add(DT_TyLoan.Columns["TyLoan"]);

به نظر من ستون را ایجاد کن، بعد سطر به سطر اطلاعات را از جداول قبلی به جدول جدید کپی کن.

Masoud_TB
یک شنبه 14 بهمن 1386, 13:11 عصر
دلیلش این است که وقتی یک ستون به یک جدول اضافه شده نمی تواند به جدول دیگری تعلق بگیرد. برای همین یا باید یک ستون جدید بسازی یا اینکه ابتدا از ستون های اون جدول حذفش کنی و بعد دوباره به جدول دوم اضافش کنی.


DataColumn dC = DT_TyLoan.Columns["TyLoan"];
DT_TyLoan.Columns.Remove(dc);
FDdt.Columns.Add(dC);

Alireza_Salehi
شنبه 04 اسفند 1386, 16:43 عصر
سلام دوستای عزیزم
من می خوام که سه تا ستون به یک Datatable اضافه کنم . برای این کار از سه تا دیتاتیبل استفاده کردم . یعنی اول با این کد سه تا Datatable رو با داده های مورد نظر پر کردم .

//نوع وام
DT_TyLoan = dbc.getdata("select Sateb_Temp_Loan.TyLoan from Sateb_Temp_Loan,Sateb_Request where Sateb_Temp_Loan.TyLoCode=Sateb_Request.TyLoCode");
//بانک
DT_BaName = dbc.getdata("select Sateb_Temp_Bank.BaName from Sateb_Temp_Bank,Sateb_Request where Sateb_Temp_Bank.BaCode=Sateb_Request.BaCode");
//شعبه
DT_BrName = dbc.getdata("select Sateb_Temp_Branch.BrName from Sateb_Temp_Branch,Sateb_Request where Sateb_Temp_Branch.BrCode=Sateb_Request.BrCode");

بعد با این کد می خوام مقدار این سه تا Datatable رو به Datatable اصلی خودم اضافه کنم :

FDdt.Columns.Add(DT_TyLoan.Columns["TyLoan"]);
FDdt.Columns.Add(DT_BaName.Columns["BaName"]);
FDdt.Columns.Add(DT_BrName.Columns["BrName"]);

اما این Error رو میده :
خوب چه کاریه ،به جای این کار یک کوئری بنویسید اون سه تا ستون رو برگردونه و بریزید تو یک DataTable به اون سه تا DataTable دیگه هم نیازی نیست.

alirzn
دوشنبه 06 اسفند 1386, 07:23 صبح
این کمکمت می کنه


dataGridView1.AutoGenerateColumns = true;
DataColumn dc1 = newDataColumn("radif", typeof(int));
dc1.AutoIncrement = true;
dt.Columns.Add(dc1);
dataGridView1.DataSource = dt;


int count_datatgrid = int.Parse(dataGridView1.RowCount.ToString()) - 1;
int j=0;
for (int i=0;i<count_datatgrid;i++)
{
j=i+1;
dataGridView1[4,i].Value=j.ToString();
}