PDA

View Full Version : Import تاریخ از Access به Sql server



mahak_f
پنج شنبه 19 بهمن 1385, 08:13 صبح
میخوام یه جدول از Access 97 رو به Sql Server 2000 تبدیل کنم. (با استفاده از دستور Import در Sql Server )
این جدول توی Access یه ستون از نوع datetime داره .البته این فیلد توی Access با تاریخ های شمسی پر شده و انگار همین داده ها مایه دردسر شده و با ایراد overflow اطلاعات از Import اونا توی Sql Server جلوگیری میکنه!
برای Import کردن چنین بانکهایی چکار باید بکنم؟ راهنمایی کنید لطفا.

ROGHANI
پنج شنبه 19 بهمن 1385, 15:22 عصر
اگه از اکسل بتونی اطلاعات رو بریزی تو SQL SERVER .میتونی اطلاعات اکسس رو به اکسل بریزی و در آنجا تاریخها رو به فرمت مناسب تبدیل کنی و بعد اطلاعات رو از اکسل بریزی تو SQL

mmha_85
جمعه 20 بهمن 1385, 00:27 صبح
اول data type رو در اکسس به نوع text تغییر بده، بعد اون رو به عنوان یک تیبل در sql ذخیره کن. در این حالت sql هم اون رو با فرمت تکست ذخیره می کنه. بعد از اینکه ذخیره شد، فرمت فیلدت رو تبدیل کن به Datetime.

mahak_f
جمعه 20 بهمن 1385, 09:00 صبح
اول data type رو در اکسس به نوع text تغییر بده، بعد اون رو به عنوان یک تیبل در sql ذخیره کن. در این حالت sql هم اون رو با فرمت تکست ذخیره می کنه. بعد از اینکه ذخیره شد، فرمت فیلدت رو تبدیل کن به Datetime.

این کاری که میگی رو انجام دادم اما به خاطر تاریخهای شمسی که داخل فیلد هست (اطلاعات قبلی بانک) برای عوض کردن تایپ فیلد ایراد overflow میگیره و نمیتونه نوع nvarchar توی sql رو به نوع datetime تبدیل کنه!

zerobit-ltd
جمعه 20 بهمن 1385, 13:47 عصر
همون طور که می دونید، sql server 2000 تاریخ شمسی رو support نمی کنه. حتما هم می دونید که برای نمایش تاریخ شمسی تو sql، یا تاریخ رو با فرمت varchar ذخیره می کنن با تاریخ رو به صورت میلادی درج می کنن و موقع نمایش، اونو به شمسی تبدیل می کنن.
حالا شما دو تا راه دارید:
اولیش اینه که تاریخهای شمسی خودتون رو تو یه فیلد از نوع nvarchar قرار بدید و با اون کار کنید.
راه دوم اینه که شما داده هات رو تو یه جدول تو sql بریزی با همون نوع varchar. این جدول، یه جدول موقته. بعد تمام رکوردها رو از جدول موقته بخون، فیلد تاریخش رو به میلادی تبدیل کن و بریز توی جدول اصلیت.

mmha_85
جمعه 20 بهمن 1385, 22:13 عصر
میشه نمونه فایلت رو بذاری؟

mohammadgij
دوشنبه 23 بهمن 1385, 15:28 عصر
http://www.barnamenevis.org/forum/showthread.php?t=51987