السلام عليكم اخواني الكرام
تواجهني المشكلة :

البرنامج لايسمح بكتابة وتخزين نص طويل في قاعدة البيانات , مع العلم أنني قمت بتحديد maxlength 125554456 واستخدم قاعدة بيانات من نوع أكسس وقد حددت في الاول short text لكن دون جدوى لايقبل النصوص الطويلة فجربت longtext وحتى هي لم تجدي اي نفع ودون جدوى ,
استخدمت دالة try فظهرت لي رسالة تفيد بان :
DataGridView Column exceeds the MaxLength
limit
السلام عليكم اخي الكريم
اختر نوع البيانات MEMO والصورة توضح لك ذلك
(08-06-19, 04:44 AM)ابراهيم ايبو كتب : [ -> ]السلام عليكم اخي الكريم
اختر نوع البيانات MEMO والصورة توضح لك ذلك
أخي الكريم لقد استخدمت نفس الطريقة , مع العمل أنني استخدم acces2016
وهي خاصية MEMO تدعى Long text ,
اقرأ سالؤال جيدا لقد استخدمت الطريقتين اي تحديد الطول الاقصى من خلال برنامج فيجوال بيسك
وقمت بتحديد Long text , من أجل نص كبير
لكن دون جدوى ,
السلام عليكم اخي الكريم
يبدو ان مشكلتك هي في حقل من الداتا غرايد حيث يقبل عددا محدودا من الاحرف
اختر الداتا غرايد فيو ثم ادحل على Edit Columns واحتر العمود الذي تدخل فيه النص الطويل
ثم ادهب الى MaxInputLength وتحرى القيمة الموجودة بجانبها
واكتب الحد الاقصى لقيول الاحرف وهو 4294967294 أو 2147483647
دمت بخير
مرحباً اخى الرائد
بخصوص العمود لاحتواء نصوص كبيرة
فاختيارك لـ Long text هو الانسب لذلك
حيث انه يمكن تخزين نص حتى مساحة 1 جيجا
اى نصف مساحة تخزين قاعدة البيانات
طيب اين تقع المشكلة لديك هنا
قد يكون المشكلة احدها الاسباب التالية
1- فى الاداء المستخدمة فى المشروع
حيث انه لا يقبل مساحة كبيرة عند ادخال النص به وهو الحد الاقصي له
2- وهو كونك تحويل برنامج / ملف الى كود وقد يكون هذا الملف يتجاوز المساحة المطلوبة
وانك تقوم بتخزين كود المحول للملف بهذا العمود لذلك يحدث معك تلك المشكلة
اذا كان الخيار الثاني صحيح فتذكر ان قاعدة بيانات الاكسس لا تتجاوز الـ 2 جيجا
ثانياً راجع الرابط التالى بخصوص البند رقم 2
بخصوص البند رقم 1 اذا كان بسبب الادوات المستخدمة فى المشروع
وهو المقصود بالخطاء الفعلى بسبب نص الرسالة
DataGridView Column
فكل ما عليك تطبيق شرح الاخ ابراهيم ايبو برده السابق
تحياتى لك
وتمنياتى لك التوفيق
جربت الامر كذلك دون جدوى , وشكرا على التفاعل
(08-06-19, 05:06 PM)الرائد كتب : [ -> ]جربت الامر كذلك دون جدوى , وشكرا على التفاعل
ضع النص المراد حفظه بقاعدة البيانات
وكذلك صورة من الشاشة التى تقوم باستخدامها لوضع النص بها
واذا احببت رداً سريعاً بحل المشكلة
اتمنى ارفاق المشروع او مثال لما لديك
حتى يتم مراجعة المثال من الادوات والاكواد المستخدمة لديك
تحياتى لك
وتمنياتى لك التوفيق
(08-06-19, 03:42 PM)ابراهيم ايبو كتب : [ -> ]السلام عليكم اخي الكريم
يبدو ان مشكلتك هي في حقل من الداتا غرايد حيث يقبل عددا محدودا من الاحرف
اختر الداتا غرايد فيو ثم ادحل على Edit Columns واحتر العمود الذي تدخل فيه النص الطويل
ثم ادهب الى MaxInputLength وتحرى القيمة الموجودة بجانبها
واكتب الحد الاقصى لقيول الاحرف وهو 4294967294 أو 2147483647
دمت بخير
خلال بحثي عن الحل في هذه المشكلة وجدت نفس المشكللة مع أحد غيري
فكان الحل بالنص التالي :
It turns out that the culprit behind this error was a lack of communication between my program's dataset and the actual database. When I initially received the error, I left the text data I had entered in the database, changed the size allowance for the row in the DataGridView, and rebuilt my program. However, the dataset did not update to reflect the size change- communication had been shut down between the dataset and the database because the error had already happened. In other words, the dataset didn't update itself in order to 'protect' itself (even though that wasn't necessary).
I resolved the issue by rebinding my DGV in the designer. I set my DGV's data source property to none, deleted the three adapters that came with the connection, and deleted my old dataset. After everything was clear, I remade the data connection (using the same connection string) and the error had disappeared. I hope this helps anybody that runs into the same issue- those DGVs are sneaky.
لكنني لم أفهم ما القصود منه والا ما يشير بالتحديد
ومسار هذا الجواب من هنا howtogeek.com/howto/8711/stupid-geek-tricks-enable-the-secret-how-to-geek-mode-in-windows/
(اتضح أن السبب وراء هذا الخطأ هو عدم وجود اتصال بين مجموعة بيانات البرنامج وقاعدة البيانات الفعلية. عندما تلقيت الخطأ في البداية ، تركت البيانات النصية التي أدخلتها في قاعدة البيانات ، وقمت بتغيير بدل الحجم للصف في DataGridView ، وأعدت بناء البرنامج. ومع ذلك ، لم يتم تحديث مجموعة البيانات لتعكس تغيير الحجم - تم إيقاف الاتصال بين مجموعة البيانات وقاعدة البيانات لأن الخطأ قد حدث بالفعل. بمعنى آخر ، لم تقم مجموعة البيانات بتحديث نفسها من أجل "حماية" نفسها (رغم أن ذلك لم يكن ضروريًا).
لقد حللت المشكلة عن طريق إعادة ربط DGV في المصمم. و قمت بتعيين خاصية مصدر بيانات DGV الخاصة بي إلى لا شيء ، وحذفت المحولات الثلاثة المرفقة مع الاتصال ، وحذفت مجموعة البيانات القديمة. بعد أن كان كل شيء واضحًا ، أعيد تشكيل اتصال البيانات (باستخدام نفس سلسلة الاتصال) وكان الخطأ قد اختفى. آمل أن يساعد هذا أي شخص يواجه نفس المشكلة )
السطور السابقة هي الترجمة للنص الانكليزي
لي سؤال : ماهي طريقتك في الاتصال بقاعدة البيانات ؟ بالكود ام عن طريق معالج الاتصال؟
لم أفهم مايشير اليه النص
أما طريقة الاتصال فهي عن طريق الفئة OleDbConnection
وشكراا لك على التفاعل