PDA

View Full Version : بهترین روش جهت انتقال جدولی مقادیر به اسکیوال سرور 2008 چیست؟



rahro
شنبه 12 بهمن 1392, 18:35 عصر
دوستان عزیز و محترم
بنده از طریق کامپوننت MSTableData مربوط به SDAC اینکارو انجام دادم بدون مشکل انجام میشه تنها اشکال اینجاست که با تاخیر نوع Table Type Name رو شناسایی میکنه
حال اگر دوستان را حل بهتری سراغ دارند ما را بی نصیب نگذارند
دوستان کد ذیل رو جهت بررسی متخصصان قرار میدام تا بنده را جهت راه حلی بهتر یاری نمایند
[ TableData.Open;

VTable.First;
while Not VTable.Eof do
begin
TableData.Insert;
for I := 0 to VTable.FieldCount-1 do
TableData.Fields[I].Value:=VTable.Fields[I].Value;
TableData.Post;
VTable.Next;
end;
//////////////////////////////////////////////
//Prepare;
CreateProcCall('MyDatabase.dbo.InsUptToMyTable');

//CreateProcCall('MyDatabase.dbo.InsUptByCoding;1');
Params.ParamByName('XTblType').AsTable :=TableData.Table;
Params.ParamByName('XYear').AsWord :=EYearList.Value;

fahimi
شنبه 12 بهمن 1392, 20:11 عصر
اگر درست فهمیده باشم شما می خواهید از یک تیبل مانند Access به تیبل SqlServer مقادیر را انتقال دهید
من از CRBatchMove از گروره DataAccess استفاده میکنم

rahro
یک شنبه 13 بهمن 1392, 17:22 عصر
دوست عزیز از توجه شما ممنونم
موردی که شما اشاره کردید باهاش کار نکردم اگر ممکنه یه نمونه کد واسم بزار اما چیزی که من خوندم خود devart شرکت کامپوننت های sdac گفته که از mstabledata استفاده کنیم و مشکل من تنها در کندی راه دور این کامپوننته

fahimi
یک شنبه 13 بهمن 1392, 19:11 عصر
روش کار خیلی ساده است تنها شرط آن فیلد ها تیبل دقیقا عین هم باشند.
تیبل مبدا:tblsurce
تیبل مقصد:tbldestination

CRBatchMove1.Source:=tblsurce;
CRBatchMove1.Destination:=tbldestination;
CRBatchMove1.Execute;