2011-03-23 29 views
24

Trabajo principalmente con PHP & MySQL, pero tengo un cliente potencial con una instalación de MS SQL y ASP. Debido a algunas razones complicadas y la integración de software fuera de línea, necesitan mantener las bases de datos en el mismo formato, lo que significa no moverse a MySQL, que sería mi preferencia personal.Puede PHP trabajar con una base de datos MS SQL

Entonces, la pregunta es, ¿puedo usar PHP para acceder y manipular una base de datos MS SQL o estoy jodido con esta?

Gracias de antemano

+0

PHP es un lenguaje de propósito general. Lo que significa que nunca se le atornillará, ya que PHP le da acceso directo a TCP/IP. Además de eso, PHP también puede interactuar directamente con el código C, etc. – Pacerier

Respuesta

34

Sí, se puede. Depende de qué versión de PHP estés usando, pero si usas PHP5 + puedes usar Microsoft's SQL Server Driver for PHP. Asegúrese de utilizar la versión 2, que le proporciona la funcionalidad PDO, así como el estilo de procedimiento.

También puede usar el controlador PDO ODBC para acceder a una instancia de SQL Server, pero ese enfoque es más problemático y no lo recomiendo.

Finalmente puede usar la biblioteca PHP MSSQL, pero eso es aún peor. Vaya con la propia solución de Microsoft si puede.

Editar: Ah, y también está el controlador DBLIB MSSQL PDO - aléjese de eso también!

+2

Echa un vistazo [aquí] (http://blogs.msdn.com/b/brian_swan/archive/2010/03/08/mssql-vs-sqlsrv-what-s-the-difference-part-1.aspx) si se pregunta por qué el controlador MS sqlsrv es una mejor opción. – T30

1

Sí, puede conectarse a MsSQL. Si está usando wamp entonces encienda la extensión php php_mssql si no, use el archivo php.ini y modifíquelo

1

sí, se puede usar MS SQL y PHP juntos. Aquí hay una página de PHP.net que muestra todas las funciones y comandos: MS SQL and PHP

Explica todo lo que necesita.

6

Sí. Como siempre y cuando tenga la extensión php_mssql en su servidor, puede utilizar las siguientes funciones comunes:

Nota: Desde PHP 5.3 esta extensión no está incluido (y probablemente no se mantiene). Puede descargarlo y agregarlo manualmente, o mejor use Microsoft drivers.

1

Para mí, la solución ha sido instalar los controladores MS como se indicó anteriormente, y usar la biblioteca ADODB como intermediario. He tenido esto en producción en una intranet sobre IIS6 y la última MSSQLExpress durante meses sin ningún problema, perfectamente confiable.

1

También puede usar sqlsrv si está usando PHP5.3+

formulario de Microsoft

Microsoft Controladores para PHP para SQL Server, versión 3.1 requiere PHP 4.5.32, o PHP 5.5.16 o posterior. Controladores de Microsoft para PHP para SQL Server, la versión 3.0 requiere PHP 5.3.0 o posterior. Si es posible, use PHP 5.3.6 o posterior.

página de descarga de Microsoft: microsoft sqlsrv download

Microsoft SQL Server Driver para PHP Manual: php sqlsrv manual

Cuestiones relacionadas