PDA

View Full Version : نحوه ریختن اطلاعات یک جدول داخل datatable



farnaz20
سه شنبه 23 تیر 1394, 10:06 صبح
سلام
من یک دستور select دارم میخام حاصل این کارو که یک جدول میشه داخل یک datatable بریزم کدی که نوشتم به صورت زیره ولی به dt ارور میده
Int32 id = 0;
DataTable dt = new DataTable();
SqlConnection co = new SqlConnection("Data Source=.\\sqlexpress;Initial Catalog=akhbar;Integrated Security=True");
string commandtext = "insert into dt(id,text,description) select * from news";
SqlCommand cmd = new SqlCommand(commandtext, co);
co.Open();
SqlDataReader dr = cmd.ExecuteReader();

dr.Read();


DataSet ds = new DataSet();
ds.Tables.Add(dt);
ds.WriteXml(Server.MapPath(".") + "\\news2.xml");
co.Close();

s.karim
سه شنبه 23 تیر 1394, 10:30 صبح
string commandtext = "insert into dt(id,text,description) select * from news";
این خط اشتباهه خب
باید توی CommandText یک کوئری اس کیو ال بنویسی
از dt نباید توش استفاده کنی!!
یه چیزی مثل این:

com = new SqlCommand();

com.Connection = Con;
com.CommandType = CommandType.StoredProcedure;
com.CommandText = "TableInsert_Proce";
com.Parameters.Add("@UserId", UserId);
com.Parameters.Add("@IsMant", IsMant);



System.Data.SqlClient.SqlDataAdapter Adr = new System.Data.SqlClient.SqlDataAdapter(com);
System.Data.DataTable dt = new System.Data.DataTable();
Adr.Fill(dt);


return dt;

farnaz20
سه شنبه 23 تیر 1394, 10:48 صبح
ممنون. این کدی که بالا نوشتید با ویيواله من با c# مینوسیم
من میخام اطلاعاتی که از دیتابیس انتخاب میشه داخل یک فایل xml ذخیره بشه برا همین میخام اینکار بکنم و این کدای پایین اضافه کردم
DataSet ds = new DataSet();
ds.Tables.Add(dt);
ds.WriteXml(Server.MapPath(".") + "\\news2.xml");
یعنی datatable داخل dataset ریخته بشه و حاصل select که یک جدوله در واقع داخل datatable ریخته بشه