PDA

View Full Version : خروجی Datatable به اکسس و SQL



چنگیز مهدیقلی
سه شنبه 16 خرداد 1385, 18:26 عصر
سلام
یه راهنمائی ولو کوچیک میخوام که اگر ممکنه یا خودتون راهنمائی بفرمائید یا اگر منبع سراغ دارید لینک بدید. ممنون میشم.

از یه فایل DBF اطلاعات رو خوندم و رکوردها رو تو یه Datatable که درون یک Dataset نگهداری میشه ریختم. الان وقتی اطلاعات رو تو گرید می بینم کاملا" درست هستند. حالا میخوام این Datatable رو بصورت یک فایل MDB و یک Table در یکی از Database های Sqlserver ذخیره کنم. (راستی در مورد اکسل و XML هیچ مشکلی نداشتم و براحتی این کار رو کردم:لبخند: )

ممنون از توجهتون

علیرضا مداح
چهارشنبه 17 خرداد 1385, 20:13 عصر
سلام .
دوست عزیز به شما پیشنهاد میکنم توسط SQL Server Import And Export Wizardفایل DBF خود را به یکی از فرمتهای مورد نظر (MDB یا غیره) تبدیل نمایید .
این ویزارد از مسیر زیر قابل اجرا میباشد :


x:\Program Files\Microsoft SQL Server\90\DTS\Binn\DTSWizard.exe

چنگیز مهدیقلی
چهارشنبه 17 خرداد 1385, 23:21 عصر
سلام .
دوست عزیز به شما پیشنهاد میکنم توسط SQL Server Import And Export Wizardفایل DBF خود را به یکی از فرمتهای مورد نظر (MDB یا غیره) تبدیل نمایید .
این ویزارد از مسیر زیر قابل اجرا میباشد :


x:\Program Files\Microsoft SQL Server\90\DTS\Binn\DTSWizard.exe

ممنون از توجهتون.
مسئله اینجاست که الان دیگه من با DBF سر و کار ندارم. اون DBF کدپیجیش کانورت شده و الان در VB.net بصورت یک datatable در اومده . ضمنا" من میخوام این برنامه رو بدم دست user که باهاش اتوماتیک بتونه خروجی Mdb بگیره یا بفرسته رو SQL و تو کریستال ازش گزارش بگیره.

niloufar
شنبه 20 خرداد 1385, 08:26 صبح
????
سلام
یعنی چی؟؟؟ خوب به طور عادی اونا رو با یه کدنویسی ساده در دیتابیس موردنظر update کنید!!!

چنگیز مهدیقلی
شنبه 20 خرداد 1385, 23:06 عصر
????
سلام
یعنی چی؟؟؟ خوب به طور عادی اونا رو با یه کدنویسی ساده در دیتابیس موردنظر update کنید!!!
قربونتون برم.
مسئله هم همون دیتابیس مورد نظره. اینکه میخوام یه Save Dialog باشه و بتونه نام و مسیر رو انتخاب کنه.
هدفم اینه که برنامه user friendly باشه و تخصصی نخواد و نیاز به خارج شدن از برنامه و از این جور چیپ بازیها نداشته باشه. وگرنه اصلا چه نیازی داشتم به اینکه خروجی بگیرم. همین الان که دیتاتیبل رو دارم میتونم صد جور گزارش با کریستال ازش بگیرم.

ولی مثلا" یه کارمندی لیست پرسنل رو تو اکسل میخواد. یا یه مدیری لیست اقلام و موجودی انباراش رو تو اکسس میخواد. یه کارمند معمولی میتونه با DTS کار کنه؟ اونوقت من چیکاره ام؟

ghafoori
یک شنبه 21 خرداد 1385, 08:25 صبح
دوست عزیز
ایا منظور شما اینه که یک جدول در دیتاست دارید با تعداد فیلد ثابت و ممکن داخل درخواستهای
هر کاربر دارای تعداد رکورد های خواص باشد.حالا شما میخواهید این جدول رو طبق دستور کاربر در محل خواصی ذخیره کنید
اگر منظور شما اینه پیشنهاد میکنم یک فایل اکسس با یک جدول که همون ساختار جدول دیتاست حالا وقتی کاربر درخواست را داد و محل فایل را تعیین کرد یک کپی از فایل اکسس بگیرید
و در محل درخواست کاربر ذخیره کنید حالا به ان وصل شده و اطلاعات رکوردهای کاربر را در ان
وارد کنید
اگر منظور شما این نیست کمی بیشتر توضیح دهید

چنگیز مهدیقلی
یک شنبه 21 خرداد 1385, 23:25 عصر
دوست عزیز
ایا منظور شما اینه که یک جدول در دیتاست دارید با تعداد فیلد ثابت و ممکن داخل درخواستهای
هر کاربر دارای تعداد رکورد های خواص باشد.حالا شما میخواهید این جدول رو طبق دستور کاربر در محل خواصی ذخیره کنید
اگر منظور شما اینه پیشنهاد میکنم یک فایل اکسس با یک جدول که همون ساختار جدول دیتاست حالا وقتی کاربر درخواست را داد و محل فایل را تعیین کرد یک کپی از فایل اکسس بگیرید
و در محل درخواست کاربر ذخیره کنید حالا به ان وصل شده و اطلاعات رکوردهای کاربر را در ان
وارد کنید
اگر منظور شما این نیست کمی بیشتر توضیح دهید
تا حالا سر و کارتون به دیتابیس کانورتور خورده. من الان همونطور که گفتید یه جدول در دیتاست دارم.
اصلا فرض کنید که من این جدول رو دستی پر کردم. حالا میخوام اون جدول رو با فرمت اکسس یا بصورت جدول در SQL ذخیره کنم. با هر نامی که User برنامه خواست. مثلا با متد datatable.xmlwrite() براحتی میشه این جدول رو با فرمت XML ذخیره کرد. مشابه این عمل رو میخوام منتهی با فرمت اکسس یا جدول در SQL.
پس جدولها فیلدهای ثابت ندارند. ممکنه این برنامه بره یه جا فایل حقوق و دستمزد برنامه قدیمیشون رو بخوان کانورت کنن تو اکسس. یا بره یه جا بخوان فایل حواله فروش قدیم رو بیارن تو ویندوز و ازش گزارش بگیرن. اصلا معلوم نیست ممکنه منبع پر کننده این جدول چی باشه. یه وقت یه جدول با 24000 رکورد و 8 فیلد (کدینگ انبار) گاهی یه جدول با 1024 رکورد و 41 فیلد (حقوق و دستمزد) و ....

ghafoori
دوشنبه 22 خرداد 1385, 10:27 صبح
دوست عزیز
باید از روی جدول دیتاست یک جدول با ساختار مشابه در اکسس ایجاد کرد
من یک همچین روشی را پیشنهاد میکنم ابتدا ان datatable را میگیریم سپس یک یک فیلدهای ان را بدست میاورم حالا با استفاده از مشخصات فیلدها کد sql لازم رو تولید میکنم
بعد یک بانک اکسس خالی در برنامه قرار میدهم حالا طبق درخواست کاربر یک کپی از بانک اکسس در محل مورد نظر کاربر ایجاد میکنم حالا به ان متصل شده دستورات sql را اجرا میکنم
حالا جدول با هر چندتا فیلد ایجاد شده حالا رکوردهای خودمان را داخل ان میریزیم
من یک برنامه ساده طبق این روش نوشتم الان میتونه یک جدول داخل اکسس با هر چندتا فیلد را از رویdatatable بسازه اگر خواستی بگو وقتی کاملش کردم برات بفرستم
به نظر من این تنها روش است :گیج: :اشتباه: برای sqlserver نیز باید همین تور عمل کرد:متفکر:

چنگیز مهدیقلی
دوشنبه 22 خرداد 1385, 21:39 عصر
اگر لطف کنی بفرستی ممنون میشم. خودمم هم دارم یه کارائی میکنم. در مورد sql که فکر کنم باید T-SQL بنویسم که Create table کنه.