مشكلة بال encoding

أرسل من قبل Renwar في الأربعاء, 2008/07/09 - 12:47am.
عضو فعال
صورة Renwar

تاريخ التسجيل: 2005-02-24
مشاركات: 882

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الخامسة
الاختصاص: هندسة برمجيات

مسا الخير
عندي apache 2.2
عم بشتغل على phpMyAdmin وعلى mysql 5.0.22
=======
عم بعمل stored procedure لتعليمة insert على جدول
المشكلة يلي عم بتصير كالتالي :
انا لازم اكتب بقلب السجلات بالعربي.
اذا بعمل insert بشكل مباشر بدون stored procedure بيمشي الحال.
أما من ال stored procedure مع انو النمط يلي بتاخدو هو varchar(40 وهو نفس نمط الحقل يلي عم بعمل عليه insert
ما عم يمشي الحال و عم يقلي data too long
هلأ هي نص المشكلة
الكمالة انو عم بستدعي نفس ال stored procedure من جافا بتشتغل و ما بتعطي خطأ بطول المحارف
و لكن بتعطي شغلة تانية و هي انو بيتحولو لاشارات استفهام.
ال encodings يلي جربتون هنن :
cp1250_general_ci
latin1_general_ci
latin1_swedish_ci
utf8_unicode_ci
--------
حدا بيقدر يقترح عليي شي ؟

 
دخول أو تسجيل لإرسال التعليقات | قراءة: 201

خيارات عرض التعليقات

اختر طريقتك المفضلة لعرض التعليقات و اضغط "حفظ الإعدادات" لتفعيل تغييراتك.
الأربعاء, 2008/07/09 - 1:41am
عضو فعال
صورة Renwar

تاريخ التسجيل: 2005-02-24
مشاركات: 882

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الخامسة
الاختصاص: هندسة برمجيات

الحل بسيط عند جماعة mysql
و بيعتمد مبدأ الباب يلي بيجيك منو ريح سدو و استريح
بلا ما تستعمل stored procedure
لأنو ما في حل تاني Sad
http://bugs.mysql.com/bug.php?id=36790

 
دخول أو تسجيل لإرسال التعليقات
الأربعاء, 2008/07/09 - 4:45am
مدير
صورة foaad

تاريخ التسجيل: 2005-07-15
مشاركات: 3149

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الخامسة
الاختصاص: هندسة برمجيات

كتب Renwar:
الحل بسيط عند جماعة mysql
و بيعتمد مبدأ الباب يلي بيجيك منو ريح سدو و استريح
بلا ما تستعمل stored procedure
لأنو ما في حل تاني Sad
http://bugs.mysql.com/bug.php?id=36790
بس حسب مو مكتوب اذا عملت برامترات الاجرائية من النمط var1 CHAR بيمشي الحال!

 
دخول أو تسجيل لإرسال التعليقات
الأربعاء, 2008/07/09 - 6:25pm
عضو فعال
صورة Renwar

تاريخ التسجيل: 2005-02-24
مشاركات: 882

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الخامسة
الاختصاص: هندسة برمجيات

كتب foaad:
كتب Renwar:
الحل بسيط عند جماعة mysql
و بيعتمد مبدأ الباب يلي بيجيك منو ريح سدو و استريح
بلا ما تستعمل stored procedure
لأنو ما في حل تاني Sad
http://bugs.mysql.com/bug.php?id=36790
بس حسب مو مكتوب اذا عملت برامترات الاجرائية من النمط var1 CHAR بيمشي الحال!
هو بينضاف صحيح.
بس بيبقي النص التاني من المشكلة
وهو إنو الاجراء ما بعرف شو عم يعمل بالبارامتر بعد ما يستلمو
و ما عم يتخزن بالداتابيز غير اشارت استفهام.
مع انو اذا بكتب التعليمة بشكل مباشر بيمشي حالها.
أنا الencodings يلي جربتهون مذكورين بالموضوع اول شي.

 
دخول أو تسجيل لإرسال التعليقات
الأربعاء, 2008/07/09 - 6:51pm
صورة bayrn

تاريخ التسجيل: 2008-03-05
مشاركات: 801

الجامعة: الافتراضية
الكلية: تكنولوجيا المعلومات
المرحلة: السنة الرابعة
الاختصاص: غير ذلك

unicodencoding

 

قرأتُ مجدَكِ في قلبي و في الكُتُـبِ         شَـآمُ ، ما المجدُ؟ أنتِ المجدُ لم يَغِبِ

 
دخول أو تسجيل لإرسال التعليقات
الخميس, 2008/07/10 - 12:25am
مدير
صورة foaad

تاريخ التسجيل: 2005-07-15
مشاركات: 3149

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الخامسة
الاختصاص: هندسة برمجيات

كتب Renwar:
هو بينضاف صحيح.
بس بيبقي النص التاني من المشكلة
وهو إنو الاجراء ما بعرف شو عم يعمل بالبارامتر بعد ما يستلمو
و ما عم يتخزن بالداتابيز غير اشارت استفهام.
مع انو اذا بكتب التعليمة بشكل مباشر بيمشي حالها.
أنا الencodings يلي جربتهون مذكورين بالموضوع اول شي.
اذا اشارات استفهام معناها مشكلة encoding
انتبه انو عندك 5 أماكن (اذا مو أكتر) ممكن تكون المشكلة منها
- الـ encoding تبع البرنامج (يلي عم يستدعي الاجرائية)
- الـ encoding الافتراضي تبع MySql
- الـ encoding تبع قاعدة البيانات
- الـ encoding تبع الجدول
- الـ encoding تبع الحقل

حاول تساويهون كلهون utf-8

 
دخول أو تسجيل لإرسال التعليقات
الخميس, 2008/07/10 - 8:49am
عضو فعال
صورة Renwar

تاريخ التسجيل: 2005-02-24
مشاركات: 882

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الخامسة
الاختصاص: هندسة برمجيات

كتب foaad:
اذا اشارات استفهام معناها مشكلة encoding
انتبه انو عندك 5 أماكن (اذا مو أكتر) ممكن تكون المشكلة منها
- الـ encoding تبع البرنامج (يلي عم يستدعي الاجرائية)
- الـ encoding الافتراضي تبع MySql
- الـ encoding تبع قاعدة البيانات
- الـ encoding تبع الجدول
- الـ encoding تبع الحقل
حاول تساويهون كلهون utf-8

بصراحة اخر 4 كلون مزبطهون منيح.

أول واحد هوو عالاغلب المشكلة منو :

عم بستدعي من برنامج مكتوب بجافا و حتى لما عم بكتب الquery عم ببعتلها string مكتوب بالunicode يعني فرضا هيك :

String s = new String("\u0623\u062D\u0645\u062F" ) ;

و كمان جربت تابع convert 'sth' using utf8 وأنا عم بعملinsert بس كمان ما مشي الحال

----

أنا عندي إحساس انو المشكلة من ال mysql-connector-java صرت مجرب أكتر من واحد بس ما عم يمشي الحال.

إذا بتعرف شي واحد مجرب يا ريت تحطلي ياه.

 
دخول أو تسجيل لإرسال التعليقات
الخميس, 2008/07/10 - 10:26am
مدير
صورة همام

تاريخ التسجيل: 2004-01-24
مشاركات: 1925

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: متخرج
الاختصاص: هندسة شبكات

انت جربت تحط نوع الاتصال مع الداتابيس بالجافا يكون نوعها UTF-8

حط عنوان الداتابيس :
jdbc:mysql://"+host+":3306/"+dbname+"?useUnicode=yes&characterEncoding=UTF-8

على فكرة ... String s = new String("\u0623\u062D\u0645\u062F" )
هو utf-16 مو utf-8

デスノート

 
دخول أو تسجيل لإرسال التعليقات
الخميس, 2008/07/10 - 8:48pm
عضو فعال
صورة Renwar

تاريخ التسجيل: 2005-02-24
مشاركات: 882

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الخامسة
الاختصاص: هندسة برمجيات

بعد قعدة عالمسنجر مع "همام"
طلعت خابص اكتر من خبصة وحدة Smile
هلأ مشي الحال يسلمو ايديكون كلكون
أهم شي انو كنت رح اقلب الداتابيز أوراكل و هلأ ارتحت من انو عيد الشغل Very Happy

 
دخول أو تسجيل لإرسال التعليقات