Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

koneksi codeigniter dan odbc

Ini sebenarnya bug di CodeIgniter. Di driver ODBC (/system/database/drivers/odbc/odbc_driver.php) saat Anda memilih tabel, metode berikut digunakan:

function _from_tables($tables)
{
    if ( ! is_array($tables))
    {
        $tables = array($tables);
    }

    return '('.implode(', ', $tables).')';
}

Ini mencoba untuk mengelompokkan beberapa pilihan tabel bersama-sama untuk menegakkan prioritas operator, ini akan berfungsi dengan baik jika Anda menggunakan lebih dari satu tabel, namun dengan satu tabel itu masih mencoba untuk mengelompokkannya yang menyebabkan kesalahan yang Anda dapatkan.

Sayangnya, saya tidak percaya itu mungkin untuk memperluas file driver ini sehingga Anda mungkin harus mengedit file inti itu sendiri. Perhatikan ini jika Anda perlu memperbarui CodeIgniter di masa mendatang, Anda harus mengubah metode menjadi seperti berikut:

function _from_tables($tables)
{
    if ( ! is_array($tables))
    {
        return strstr($tables, ',') ? '('.$tables.')' : $tables;
    }
    else
    {
        return count($tables) > 1 ? '('.implode(', ', $tables).')' : end($tables);
    }
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL pilih di mana tidak dalam subquery tidak mengembalikan hasil

  2. Bagaimana Anda mengimpor file .sql MS SQL yang besar?

  3. Bergabung dengan tabel berdasarkan nilai yang dipisahkan koma

  4. SQL Server mengonversi kolom menjadi kolom identitas

  5. Tidak Ada Dukungan untuk OVER di MS SQL Server 2005?