PDA

View Full Version : سوال: تبدیل بانک اکسس به Microsoft SQL Server Database File (SqlClient)



hamedjonjon
جمعه 13 مرداد 1391, 12:10 عصر
با سلام خدمت اساتید گرامی
ما یک نرم افزار جدید برای جایگزین کردن با یک برنامه قدیمی نوشتیم
برنامه قدیمی از بانک اکسس استفاده میکنه و چند هزار تایی داده داره
در نرم افزاری که ما طراحی کردیم از بانک Microsoft SQL Server Database File (SqlClient) استفاده کردیم
می خواستم بدونم که چطور میشه بانک اکسس رو تبدیل به Microsoft SQL Server Database File (SqlClient)
کرد.یعنی کل داده ها رو به بانک جدید انتقال بدم
لطفا من رو راهنمایی کنید و بگین راحت ترین راهی که میدونید چیه؟

با تشکر

Arash_janusV3
جمعه 13 مرداد 1391, 13:03 عصر
فقط داده ها را به sql می خواهید انتقال بدید؟

hamedjonjon
جمعه 13 مرداد 1391, 13:08 عصر
ممنون از توجه شما
بله
نام فیلد ها ممکن هست تفاوت داشته باشه ولی هر فیلد حتما یک معادل داره

Arash_janusV3
جمعه 13 مرداد 1391, 13:21 عصر
sql خودش این امکان را فراهم می کنه در sql روی دیتابیس راست کلیلک کنید و از زیر منوی task گزینه Import Data را انتخاب کنید

انتقال اطلاعات از SQL به Access (http://barnamenevis.org/showthread.php?278919-%D8%A7%D9%86%D8%AA%D9%82%D8%A7%D9%84-%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA-%D8%A7%D8%B2-SQL-%D8%A8%D9%87-Access)

اگر تغییراتی در هر دو دیتابیس وجود دارد بهتر در سی شارپ بین Access و Sql ارتباط برقرار کنید و داده ها را به دیتابیس Insert کنید
این روش مدیریت بهتری دارد

hamedjonjon
جمعه 13 مرداد 1391, 13:32 عصر
اگه منظور شما sql server هست که من اون رو نصب ندارم
اگر هم منظورتون از راست کلیک کردن جایی غیر از sql server هست میشه بیشتر راهنمایی کنید؟

Arash_janusV3
جمعه 13 مرداد 1391, 13:34 عصر
باید 2005sql را نصب کنید

nilmil_nil
جمعه 13 مرداد 1391, 15:17 عصر
اگه فیلد هاتون با هم فرق میکنن باید خودتون تو سی شارپ یه برنامه بنویسید و اونا رو از دیتابیس اکسس به سیکول انتقال بدی

hamedjonjon
جمعه 13 مرداد 1391, 16:50 عصر
ممنون
من اطلاعات رو از پایگاه اکسس خوندم و ریختم داخل یه dataTable
میشه حالا بگید که چطور میتونم یک insert درون sql انجام بدم طوری که اطلاعات رو از dataTable خونده شده بگیرم؟

nilmil_nil
جمعه 13 مرداد 1391, 17:38 عصر
کافیه با یه حلقه یکی یکی فیلد ها رو از Datatable بخونی
strname=dt.rows[i]["Fieldname"].tostring()
strfamily=dt.rows[i]["FieldFamily"].tostring()
strtel=dt.rows[i]["FieldTel"].tostring()
strmob=dt.rows[i]["FieldMob"].tostring()

hamedjonjon
جمعه 13 مرداد 1391, 17:51 عصر
dt.Rows[i].["name"].toString()
این کد ارور میده میگه
identifier expected!!!
یعنی داخل براکت دوم نمیشه name گذاشت

hamedjonjon
جمعه 13 مرداد 1391, 17:53 عصر
ببخشید اشتباه از من بود نباید بعد از براکت اول نقطه میذاشتم

hamedjonjon
شنبه 14 مرداد 1391, 00:36 صبح
سلام
بالاخره موفق شدم این کار رو انجام بدم
این هم لینک پروژه انجام شده :
connectToAccess.zip (http://www.4shared.com/zip/LkEuWbNd/connectToAccess.html)