2012-02-12 63 views
0

我正在为需要连接到SQL Server数据库的Android应用程序构建Web服务。我试图通过家用电脑上的PHP(WAMP)连接到SQL Server数据库。如何通过PHP连接到SQL Server数据库?

但是,我没有经验的SQL Server,不知道如何继续。对于SQL Server,我使用默认设置和Windows身份验证,所以我不确定要在连接字符串中输入什么内容。

下面你有我的联系:

$connStr = "PROVIDER=SQLOLEDB;SERVER=".$myServer.";UID=".$myUser.";PWD=".$myPass.";DATABASE=".$myDB; 
$conn->open($connStr); //Open the connection to the database 

我还没有找到一个具体的例子在任何地方,到目前为止,所以我需要知道什么是变量​​,$myUser等需要是Windows的情况下,验证。

或者,如何切换到SQL Server中的用户名和密码身份验证?

LE:使用Microsoft SQL Server 2008和SQL Server Management Studio中

回答

4

PDO是接受连接到PHP中不同数据库的方式。它也有一个driver for MS-SQL

下面是一个例子(From PDO MSSQL

$con = new PDO("sqlsrv:Server=localhost;Database=testdb", "UserName", "Password"); 
+0

对不起......当谈到这些时,我很喜欢这个小菜。所以......我会放弃目前的尝试,并与PDO一起前往。为此,我需要为PHP安装另一个驱动程序,就像我安装微软的一样,对吧? :D – Eugen 2012-02-12 15:19:43

+0

首先通过运行phpinfo()检查支持;你应该看到类似“PDO支持\t启用”“PDO驱动程序\t dblib,mysql,odbc,pgsql,sqlite,sqlite2”现在我不知道,但你需要dblib或sqlsrv(其中之一是用于* nix和一个用于Windows afaik),如果它在那里,你可以使用它,如果它不是那么你需要添加适当的.dll到PHP。INI在你的服务器(wamp)中,寻找类似的东西:extension = php_pdo_mssql.dll(应该评论我猜)我使用Linux,所以无法帮助你在Windows下的文件和扩展的确切位置。祝你好运:) – 2012-02-12 15:32:23

+0

[这是来自wamp服务器网站的一个主题](http://forum.wampserver.com/read.php?2,68421)这可能是一个很好的起点。也可随意将此讨论移至聊天中,我可以尝试在此帮助您 – 2012-02-12 15:37:04

-1

据:http://www.php.net/manual/en/function.mssql-connect.php

mssql_connect($servername, $username, $password) 

是如何连接到Microsoft SQL数据库。

+0

此扩展是不适用于Windows与PHP 5.3或更高版本。 http://www.php.net/manual/en/intro.mssql.php – iDifferent 2012-02-12 14:55:09

+0

RTFM答案应该是评论,而不是答案。 – rdlowrey 2012-02-12 14:55:53

+0

在相关说明中,如果人们会停止坚持使用它们(而可怕的“教程”网站停止提倡它们),而不是极其优越的'PDO'扩展名,则同样的命运等待'mysql *'扩展名。 – rdlowrey 2012-02-12 14:58:37

2

微软做出了driver for PHP,但我认为这是更好地去与PDO。

您可以使用PDO_SQLSRV:

$dbh = new PDO("sqlsrv:Server=$hostdb;Database=$dbname", $usr, $psw); 

或者使用PDO_DBLIB(在Windows上无法使用,因为PHP 5.3):

$dbh = new PDO("dblib:host=$hostdb;dbname=$dbname", $usr, $psw);  
0

在一个相关的说明,同样的命运等待MYSQL *扩展,如果人们会永远停止坚持使用它们(而可怕的“教程”网站会停止提倡它们),而不是大大优越的PDO扩展。评论时间70年01月01日原作者:rdlowrey

0
$dbh = new PDO("sqlsrv:Server=$hostdb;Database=$dbname", $usr, $psw); 
相关问题