نمایش نتایج 1 تا 10 از 10

نام تاپیک: انتقال اطلاعات سلول های بیشتر از 255 کاراکتر از فایل اکسل به دیتابیس

  1. #1

    انتقال اطلاعات سلول های بیشتر از 255 کاراکتر از فایل اکسل به دیتابیس

    سلام روز بخیر
    دوستان تو برنامه من اکثر اطلاعات از فایل اکسل به دیتابیس انتقال داده میشه مشکلی که الان دارم اینه که ممکنه بعضی از سلول هام بیش از 255 کاراکتر داشته باشه
    من تو قسمتی که با استفاده از حلقه سلول ها رو میخونم و تو دیتابیسم مینویسم چون string بیشتر از 255 نمیگیره از StringBuilder استفاده کردم
    وقتی فقط رکودی که دارای سلول طولانی هستش اینپورت میکنم مشکلی نداره اما وقتی فایل کامل اینپرت میکنم سر رکورد با کاراکتر طولانی به مشکل میخوره
    codesfc.Append(row.Cells[29].Value);
    با استفاده از این تکه کد سلول ها رو از فایل اکسل میریزم تو متغیر از نوع StringBuilder
    ممنون از راهنماییتون

  2. #2

    نقل قول: انتقال اطلاعات سلول های بیشتر از 255 کاراکتر از فایل اکسل به دیتابیس

    سلام
    مشکل شما احتمالا جای دیگری هست ، طول دیتاتایپ string ، چیزی شما فرمودید نیست
    https://msdn.microsoft.com/en-us/lib...v=vs.100).aspx

    شاید طول فیلد شما در دیتابیس 255 ست شده
    قوانین سایت برنامه نویس [ به سوالات از طریق پیام خصوصی پاسخ داده نمی شود ]

  3. #3

    نقل قول: انتقال اطلاعات سلول های بیشتر از 255 کاراکتر از فایل اکسل به دیتابیس

    طئل فیلدی که استفاده میکنم 50 هستش یعنی استرینگی که از اکسل میخونم رو به تکه های 10 تایی جدا میکنم و برای هر تکه یک رکورد جدید تو دیتابیس می نویسم
    وقتی فایل اکسل با تک رکورد که طولش طولانی باشه اینپرت میکنم مشکلی نداره و درست کار میکنه اما وقتی فایل کلی اینپرت میکنم زمانی که سلول را داحل متغیرم میریزه Lengh=255 هستش

  4. #4

    نقل قول: انتقال اطلاعات سلول های بیشتر از 255 کاراکتر از فایل اکسل به دیتابیس

    سلام
    کدتون و یا یک پروژه تستی که توی اون خطا اتفاق میفته رو به همراه نمونه فایل اکسل و دیتابیس (کلا هرچی که نیاز هست برای اجرا) اینجا بگذارید تا بررسی مشکل آسون تر باشه.



    موفق باشید.
    قوانین سایت برنامه نویس [ به سوالات از طریق پیام خصوصی پاسخ داده نمی شود ]

  5. #5

    نقل قول: انتقال اطلاعات سلول های بیشتر از 255 کاراکتر از فایل اکسل به دیتابیس

    نقل قول نوشته شده توسط محمد آشتیانی مشاهده تاپیک
    سلام
    کدتون و یا یک پروژه تستی که توی اون خطا اتفاق میفته رو به همراه نمونه فایل اکسل و دیتابیس (کلا هرچی که نیاز هست برای اجرا) اینجا بگذارید تا بررسی مشکل آسون تر باشه.



    موفق باشید.
    نمیدونم تصویر میتونه کمک کنه یا کد برنامه لازمه چون حجم برنامه زیاد بود گفتم شاید با تصویر بتونید متوجه شید فعکس از فایل اکسل گذاشتم فیلدی که باهاش مشکل دارم
    رکوردی که سبر رنگ هستش اگه به این صورت وارد شه با توجه به اینکه حدود 380 کاراکتر هستش همینطور که تو تصویر برنامه میبینید 255 کاراکترشو میبینه ولی اگه تک رکورد وارد کنم درست عمل میکنه
    prog1.jpg
    excel.jpg

  6. #6

    نقل قول: انتقال اطلاعات سلول های بیشتر از 255 کاراکتر از فایل اکسل به دیتابیس

    نقل قول نوشته شده توسط محمد آشتیانی مشاهده تاپیک
    سلام
    مشکل شما احتمالا جای دیگری هست ، طول دیتاتایپ string ، چیزی شما فرمودید نیست
    https://msdn.microsoft.com/en-us/lib...v=vs.100).aspx

    شاید طول فیلد شما در دیتابیس 255 ست شده
    اگه این تصاویر نمیتونه کمکی بکنه بگید تا ی تکه کد تستی بنویسم و براتون ارسال کنم

  7. #7

    نقل قول: انتقال اطلاعات سلول های بیشتر از 255 کاراکتر از فایل اکسل به دیتابیس

    سلام
    زحمت بکشید ، یک کد تستی ارسال کنید
    قوانین سایت برنامه نویس [ به سوالات از طریق پیام خصوصی پاسخ داده نمی شود ]

  8. #8

    نقل قول: انتقال اطلاعات سلول های بیشتر از 255 کاراکتر از فایل اکسل به دیتابیس

    نقل قول نوشته شده توسط محمد آشتیانی مشاهده تاپیک
    سلام
    زحمت بکشید ، یک کد تستی ارسال کنید
    سلام ممنون از راهنمایی
    http://s8.picofile.com/file/8286345118/test.rar.html

  9. #9

    نقل قول: انتقال اطلاعات سلول های بیشتر از 255 کاراکتر از فایل اکسل به دیتابیس

    سلام
    این مسئله ارتباطی به نوع داده سمت سی شارپ نداره ، موضوع از این قراره که oledb برای تشخیص نوع دیتای ستون های فایل اکسل ، 8 ردیف اول رو بررسی میکنه و بر اون اساس تصمیم میگیره ، وقتی نوع فیلد رو متنی (character) تشخیص میده ، به صورت اتوماتیک طول اون رو 255 در نظر میگیره
    برای حل این مشکل باید مقادیری رو در رجیستری تغییر بدید تا oledb فیلدهای متنی رو از نوع memo در نظر بگیره و محدودیت طول برداشته بشه
    این لینک رو مطالعه کنید https://support.microsoft.com/en-us/...overflow-error

    بر اساس همون لینکی که دادم ، راه حل ساده دیگه اینه که در یکی از هشت ردیف اول فایل اکسل و ستون مورد نظرتون یه محتوا با طول بیش از 255 کاراکتر وارد کنید تا oledb اون ستون رو به صورت اتوماتیک از نوع memo در نظر بگیره.

    ضمنا دلیل اینکه گفتید وقتی یک رکورد رو با طول زیاد ایمپورت می کنید مشکلی وجود نداره اینه که ، اون تک رکورد به هر حال جزو هشت رکورد اول فایل حساب میشه و شامل راه حلی میشه که عرض کردم.



    موفق باشید.
    قوانین سایت برنامه نویس [ به سوالات از طریق پیام خصوصی پاسخ داده نمی شود ]

  10. #10

    نقل قول: انتقال اطلاعات سلول های بیشتر از 255 کاراکتر از فایل اکسل به دیتابیس

    نقل قول نوشته شده توسط محمد آشتیانی مشاهده تاپیک
    سلام
    این مسئله ارتباطی به نوع داده سمت سی شارپ نداره ، موضوع از این قراره که oledb برای تشخیص نوع دیتای ستون های فایل اکسل ، 8 ردیف اول رو بررسی میکنه و بر اون اساس تصمیم میگیره ، وقتی نوع فیلد رو متنی (character) تشخیص میده ، به صورت اتوماتیک طول اون رو 255 در نظر میگیره
    برای حل این مشکل باید مقادیری رو در رجیستری تغییر بدید تا oledb فیلدهای متنی رو از نوع memo در نظر بگیره و محدودیت طول برداشته بشه
    این لینک رو مطالعه کنید https://support.microsoft.com/en-us/...overflow-error

    بر اساس همون لینکی که دادم ، راه حل ساده دیگه اینه که در یکی از هشت ردیف اول فایل اکسل و ستون مورد نظرتون یه محتوا با طول بیش از 255 کاراکتر وارد کنید تا oledb اون ستون رو به صورت اتوماتیک از نوع memo در نظر بگیره.

    ضمنا دلیل اینکه گفتید وقتی یک رکورد رو با طول زیاد ایمپورت می کنید مشکلی وجود نداره اینه که ، اون تک رکورد به هر حال جزو هشت رکورد اول فایل حساب میشه و شامل راه حلی میشه که عرض کردم.



    موفق باشید.
    سلام تشخیص شما کاملا درست بود من با استفاده از لینکی که برام فرستادید پیش رفتم اما زمانیکه مقدار TypeGuessRows به Decimal تغییر میدم و دوباره باز میکنم مقدارش بر میگرده به قبل درواقع تغییر نمیکنه و همچنان مشکل قبل دارم.

تاپیک های مشابه

  1. سوال: انتقال اطلاعات از فایل xml به دیتابیس
    نوشته شده توسط mehdin69 در بخش C#‎‎
    پاسخ: 5
    آخرین پست: دوشنبه 18 آذر 1392, 09:04 صبح
  2. انتقال اطلاعات از فایل اکسل به جدولی درون بانک اکسس
    نوشته شده توسط khoshblagh در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 22
    آخرین پست: سه شنبه 05 شهریور 1392, 11:50 صبح
  3. انتقال اطلاعات از فایل اکسل به جدول اکسس
    نوشته شده توسط amin9959 در بخش Access
    پاسخ: 1
    آخرین پست: دوشنبه 17 مهر 1391, 20:18 عصر
  4. سوال: انتقال اطلاعات یک کوئری از یک فرم به فرم دیگر
    نوشته شده توسط mohamadlvs در بخش C#‎‎
    پاسخ: 2
    آخرین پست: پنج شنبه 21 اردیبهشت 1391, 23:54 عصر
  5. پاسخ: 2
    آخرین پست: جمعه 07 مهر 1385, 10:45 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •