Мне удалось использовать odbc_connect, как показано ниже, для доступа 2007 и 2003, и я могу получить данные. Но когда я пытаюсь получить имена столбцов, следующая функция не будет работать для доступа 2007, но будет работать для доступа 2003 - почему?
if($type[1]=='mdb'){
$connection = odbc_connect("Driver={Microsoft Access Driver (*.mdb)};Dbq=$mdbFilename", $username, $password);
}else{
$connection = odbc_connect("Driver={Microsoft Access Driver (*.accdb)};Dbq=$mdbFilename", $username, $password);
}
function get_columns($activity_file){
global $connection;
global $typee;
$coulmn_array = array();
$result = odbc_columns($connection, $typee, "", $activity_file, "%");
while (odbc_fetch_row($result)) {
$coulmn_array[] = odbc_result($result, "COLUMN_NAME");
}
echo '<br>Exporting table '.$activity_file;
return $coulmn_array;
}
Я имею в виду, я могу получить данные и все, просто кажется, что эта функция просто не будет работать!
Пожалуйста, помогите!
Обновление
У меня был гугл и я нашел эту тему .
Я могу подтвердить, что говорит этот человек. Предоставление table_name означает, что это не сработает. Но если вы этого не сделаете. Это неприемлемо, поскольку какие столбцы возвращаются и для какой таблицы? Мне нужно это знать !!