MSHAER
09-28-2006, 12:30 AM
السلام عليكم
دايما ما يصادفني خطأ عند محاولتي الترقية
من الاصدار 3.0x الى الاصدار الجديد من 3.6.0
الخطأ اللي يظهر اثناء الترقية يكون كالتالي
Database error in vBulletin :
Invalid SQL:
SELECT varname, value, datatype FROM setting;
MySQL Error : Unknown column 'datatype' in 'field list'
Error Number : 1054
Date : Wednesday, June 21st 2006 @ 07:00:07 PM
****** : http://xx.xxx/tmp/install/upgrade_308.php?step=2
Referrer : http://xx.xxx/tmp/install/upgrade_308.php?step=1
IP Address : xxx.xxx.xxx.103
Username :
Classname : vB_Database
الحل سهل وبسيط
نروح لملف upgrade
install/upgrade.php
نبحث عن
$db->query_write("ALTER TABLE " . TABLE_PREFIX . "post_parsed RENAME " . TABLE_PREFIX . "postparsed");
ونضيف بعده مباشرة هذا الكود
$db->query_first("SELECT datatype FROM " . TABLE_PREFIX . "setting LIMIT 1");
$datatype_missing = ($db->errno());
$db->errno = 0;
if ($datatype_missing)
{
$db->query_write("ALTER TABLE " . TABLE_PREFIX . "setting ADD datatype datatype ENUM('free', 'number', 'boolean', 'bitfield', 'username') NOT NULL DEFAULT 'free'");
}
وتوجد بعد طريقة ثانية لحل هذي المشكلة
انك تزرع هذا الامر في قاعدة البيانات
ALTER TABLE setting ADD datatype ENUM('free', 'number', 'boolean', 'bitfield', 'username') NOT NULL DEFAULT 'free';
مع التحية
الموضوع منقول ومجرب من كاتب الموضوع الاصلي ليس مجرب من قبلي
شكرااااا
منقول
دايما ما يصادفني خطأ عند محاولتي الترقية
من الاصدار 3.0x الى الاصدار الجديد من 3.6.0
الخطأ اللي يظهر اثناء الترقية يكون كالتالي
Database error in vBulletin :
Invalid SQL:
SELECT varname, value, datatype FROM setting;
MySQL Error : Unknown column 'datatype' in 'field list'
Error Number : 1054
Date : Wednesday, June 21st 2006 @ 07:00:07 PM
****** : http://xx.xxx/tmp/install/upgrade_308.php?step=2
Referrer : http://xx.xxx/tmp/install/upgrade_308.php?step=1
IP Address : xxx.xxx.xxx.103
Username :
Classname : vB_Database
الحل سهل وبسيط
نروح لملف upgrade
install/upgrade.php
نبحث عن
$db->query_write("ALTER TABLE " . TABLE_PREFIX . "post_parsed RENAME " . TABLE_PREFIX . "postparsed");
ونضيف بعده مباشرة هذا الكود
$db->query_first("SELECT datatype FROM " . TABLE_PREFIX . "setting LIMIT 1");
$datatype_missing = ($db->errno());
$db->errno = 0;
if ($datatype_missing)
{
$db->query_write("ALTER TABLE " . TABLE_PREFIX . "setting ADD datatype datatype ENUM('free', 'number', 'boolean', 'bitfield', 'username') NOT NULL DEFAULT 'free'");
}
وتوجد بعد طريقة ثانية لحل هذي المشكلة
انك تزرع هذا الامر في قاعدة البيانات
ALTER TABLE setting ADD datatype ENUM('free', 'number', 'boolean', 'bitfield', 'username') NOT NULL DEFAULT 'free';
مع التحية
الموضوع منقول ومجرب من كاتب الموضوع الاصلي ليس مجرب من قبلي
شكرااااا
منقول