السلام عليكم

دايما ما يصادفني خطأ عند محاولتي الترقية

من الاصدار 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'


سلملم