ماذا تعني عبارة "مجموع طول الأعمدة في القيد هو طويل جدا" خطأ يعني في ينفورميكس؟

StackOverflow https://stackoverflow.com/questions/172156

  •  05-07-2019
  •  | 
  •  

سؤال

وأحصل على مجموع طول الأعمدة في القيد طويل جدا. خطأ من يلي

sql] Failed to execute:   CREATE TABLE GTW_WORKFLOW_MON ( WORKFLOW_NAME VARCHAR(255) NOT
NULL, WORKFLOW_LOADED NUMERIC(20) NOT NULL, ACTIVITY_NAME VARCHAR(255) NOT NULL, FLAGS    
INTEGER NOT NULL, MONITOR_NAME VARCHAR(255) NOT NULL, CLASSNAME VARCHAR(255) NOT NULL, S

TR0 VARCHAR(255), STR1 VARCHAR(255), STR2 VARCHAR(255), NUM0 VARCHAR(255), NUM1 
VARCHAR(255), NUM2 VARCHAR(255), DATE0 VARCHAR(255), DATE1 VARCHAR(255), DATE2 
VARCHAR(255), PRIMARY KEY (WORKFLOW_NAME,WORKFLOW_LOADED,ACTIVITY_NAME,MONITOR_NAME) )

  [sql] java.sql.SQLException: Total length of columns in constraint is too long.
هل كانت مفيدة؟

المحلول

والقيد المفتاح الأساسي الخاص بك هو 785 بايت (255 + 20 + 255 + 255). إذا قمت بزيادة حجم الصفحة قاعدة بيانات ل4K ينبغي لها أن تعمل، بالكاد. يجب إعادة النظر أيضا إذا كنت بحاجة إلى الأعمدة الخاصة بك أن تكون واسعة كما كنت تقوم بتعريف لهم.

ولقد وجدت مجموعة نقاش حيث مهندسا، راديكا Gadde، <وأ href = "http://www.iiug.org/forums/ids/index.cgi/noframes/read/8100" يختلط = "نوفولو noreferrer" > يصف أن الحد الأقصى لحجم مؤشر يرتبط حجم الصفحة. ويقول:

والخطأ التي تحصل في حين إنشاء الجداول. ويمكن حساب الحد الأقصى لطول المفتاح مؤشر على النحو التالي:

[(حجم الصفحة -93) / 5] -1

ومثل ل2K هو [(2048-93) / 5] -1 = [1955/5] -1 = 391-1 = 390

وإذا حجم الصفحة هو 4K هو [(4096-93) / 5] -1 = 4003 / 5-1 = 800-1 = 799

نصائح أخرى

وقبل الجواب الكامل. ولكن فكرت في إضافة بعض الروابط المفيدة في حالة شخص يعمل لهذه القضية مرة أخرى. حجم الصفحة على ينفورميكس يعتمد على نظام التشغيل. على تجربتي الأخيرة، وجدت انها 4K على وين 2008، OSX - الأسد و 2K على SUSE EL4. يمكنك العثور على حجم الصفحة باستخدام "-D onstat".

HTTP: // سوميدا. blogspot.com/2013/03/how-to-increase-informix-page-size.html مع هذه التجربة. الرابط التالي وثائق من IBM هو أيضا مفيدة جدا.

<وأ href = "http://publib.boulder.ibm.com/infocenter/idshelp/v115/index.jsp؟topic=/com.ibm.admin.doc/ids_admin_0564.htm" يختلط = "نوفولو" > http://publib.boulder.ibm.com/infocenter/idshelp/v115/index.jsp؟topic=٪2Fcom.ibm.admin.doc٪2Fids_admin_0564.htm

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top