2013-09-04 46 views
5

Tôi muốn xây dựng một ứng dụng trong Codeigniter và tôi muốn sử dụng SQL Server 2012 làm cơ sở dữ liệu của mìnhLàm thế nào để sử dụng SQL Server 2012 làm cơ sở dữ liệu của tôi trong codeigniter

Tôi chưa thử điều này và tôi không biết tôi nên bắt đầu từ đâu.

  1. Tôi có thể định cấu hình Trình mã vạch để sử dụng cơ sở dữ liệu SQL Server 2012 như thế nào?

  2. Tôi có thể sử dụng CodeIgniter hồ sơ Active để truy xuất dữ liệu từ cơ sở dữ liệu SQL Server?

  3. Nếu tôi không thể sử dụng CodeIgniter, làm thế nào tôi có thể sử dụng SQL Server truy vấn bên trong mô hình CodeIgniter của tôi?

Vui lòng cho tôi giải thích chi tiết bằng mã mẫu.

Cảm ơn.

Trả lời

0

Nó có thể được thực hiện từ thiết lập cơ sở dữ liệu trong config-> database.php thêm cấu hình riêng của cơ sở dữ liệu như

// sql thiết cofig

$db['rajeev']['hostname'] = 'localhost'; 
$db['rajeev']['username'] = 'rajeev'; 
$db['rajeev']['password'] = '[email protected]'; 
$db['rajeev']['database'] = 'rajeev_ci'; 
$db['rajeev']['dbdriver'] = 'sqlsrv'; 
$db['rajeev']['dbprefix'] = ''; 
$db['rajeev']['pconnect'] = TRUE; 
$db['rajeev']['db_debug'] = TRUE; 
$db['rajeev']['cache_on'] = FALSE; 
$db['rajeev']['cachedir'] = ''; 
$db['rajeev']['char_set'] = 'utf8'; 
$db['rajeev']['dbcollat'] = 'utf8_general_ci'; 
$db['rajeev']['swap_pre'] = ''; 
$db['rajeev']['autoinit'] = TRUE; 
$db['rajeev']['stricton'] = FALSE; 

sau đó đặt $ active_group như

này
$active_group = 'rajeev'; 
0

@rajeev có một trong một số giải pháp, nhưng nếu nó không hoạt động, bạn có thể thử sử dụng kết nối ODBC. ODBC có chức năng như kết nối cửa ngõ giữa ứng dụng CodeIgniter của bạn và SQL Server 2012 cơ sở dữ liệu.

thay đổi giá trị của 'sqlsrv' thành 'odbc'.

$db['db']['dbdriver'] = 'odbc'; 

Để tạo kết nối ODBC bạn có thể đọc liên kết này: http://msdn.microsoft.com/en-us/library/ca6axakh%28v=vs.80%29.aspx

0

đầu tiên làm điều này https://docs.moodle.org/28/en/Installing_MSSQL_for_PHP thì database.php cấu hình tập tin

$db['default']['hostname'] = 'localhost'; 
$db['default']['username'] = 'user'; 
$db['default']['password'] = 'pass'; 
$db['default']['database'] = 'database'; 
$db['default']['dbdriver'] = 'mssql'; 
$db['default']['dbprefix'] = ''; 
$db['default']['pconnect'] = TRUE; 
$db['default']['db_debug'] = TRUE; 
$db['default']['cache_on'] = FALSE; 
$db['default']['cachedir'] = ''; 
$db['default']['char_set'] = 'utf8'; 
$db['default']['dbcollat'] = 'utf8_general_ci'; 
$db['default']['swap_pre'] = ''; 
$db['default']['autoinit'] = TRUE; 
$db['default']['stricton'] = FALSE; 

và nó được thực hiện!

chắc chắn rằng đó là đăng nhập máy chủ được xác thực người dùng và mật khẩu không có cửa sổ thông tin đăng nhập

0

Trong application/config/database.php tập tin của bạn:

$db['sqlserver']['username'] = 'db_username'; 
$db['sqlserver']['password'] = 'db_password'; 
$db['sqlserver']['database'] = 'db_database'; 
$db['sqlserver']['hostname'] = 'sqlsrv:server=db_servername;Database=' . $db['sqlserver']['database']; 
$db['sqlserver']['dbdriver'] = 'pdo'; 
$db['sqlserver']['dbprefix'] = ''; 
$db['sqlserver']['pconnect'] = FALSE; 
$db['sqlserver']['db_debug'] = TRUE; 
$db['sqlserver']['cache_on'] = FALSE; 
$db['sqlserver']['cachedir'] = ''; 
$db['sqlserver']['char_set'] = 'utf8'; 
$db['sqlserver']['dbcollat'] = 'utf8_general_ci'; 
$db['sqlserver']['swap_pre'] = ''; 
$db['sqlserver']['autoinit'] = TRUE; 
$db['sqlserver']['stricton'] = FALSE; 

Bốn giá trị đầu tiên rõ ràng là cần phải được thiết lập để bất cứ cấu hình bạn có (db_username, db_password, db_database, db_servername).

Và thiết lập các nhóm hoạt động:

$active_group = 'sqlserver'; 

Sử dụng PDO nói chung là an toàn hơn (https://code.tutsplus.com/tutorials/why-you-should-be-using-phps-pdo-for-database-access--net-12059).

Đừng quên cài đặt/bật trình điều khiển PDO sqlsrv nếu nó chưa được thực hiện. https://www.microsoft.com/en-us/download/details.aspx?id=20098 - Nếu trên Windows