2013-06-27 196 views
0

我需要从工作中的Microsoft SQL Server数据库中获取一些数据。当我有我需要的数据时,我需要制作一个可以保存在本地计算机上的Excel电子表格。使用PHP SQL Server数据库查询

我发现PHPExcel似乎在Excel部分做的工作,但从数据库中获取数据呢?

我似乎无法找到最近的任何东西。只有老的教程。

+0

是不是可以使用Excel直接连接到SQL服务器(数据选项卡;从其他来源 - >从SQL Server) –

+0

我没有说我会直接使用Excel连接SQL。 – OmniOwl

+0

我会查询数据库,然后创建一个* CSV *文件 – AlexP

回答

1

用这种方式来获取记录:

<?php 
$hostname = "192.168.3.50"; 
$username = "sa"; 
$password = "123456"; 
$dbName = "yourdb"; 

MSSQL_CONNECT($hostname,$username,$password) or DIE("DATABASE FAILED TO RESPOND."); 
mssql_select_db($dbName) or DIE("Database unavailable"); 

$query = "SELECT * FROM dbo.table"; 

$result = mssql_query($query); 

for ($i = 0; $i < mssql_num_rows($result); ++$i) 
    { 
     $line = mssql_fetch_row($result); 
     print("$line[0] - $line[1]\n"); 
    } 
?> 

这将获取从数据中每一行检索和打印的页面上。使用你需要的格式。我的意思是,使用html表格以格式显示数据。

+0

我来自Java/C#背景它是一个二维数组与[行] [列]? – OmniOwl

2

使用此代码从数据库获取数据。

<?php 
// Server in the this format: <computer>\<instance name> or 
// <server>,<port> when using a non default port number 
$server = '192.168.3.50'; 

// Connect to MSSQL 
$link = mssql_connect($server, 'sa', 'sa'); 
if (!$link) { 
    die('Something went wrong while connecting to MSSQL'); 
} 
else{ 
    echo "connected "; 


    mssql_select_db('Matrix') or die("Wrong DATAbase"); 

    //mssql_query("SELECT Seq_no from dbo.Trans_R WHERE Seq_no = 000001",$link) or   die("cannot execute the query"); 

    $query = mssql_query("SELECT Tr_Date,Tr_Time,Tr_Data from Matrix.dbo.Trans_R"); 

$f = mssql_fetch_array($query); 

    echo $f['Tr_Date']; 

} 
?> 

我可以知道为什么负面投票?

他问我:

“?而是从数据库中获取数据是什么”

+0

那么,我将如何移动通过我得到的数据,所以我只提取正确的数据? – OmniOwl

+0

现在您可以添加标准。 使用Where子句过滤所需的正确数据。 要使用Where Clause Checkout,请执行以下操作:http://msdn.microsoft.com/en-us/library/ms188047.aspx – 2013-06-27 11:50:13

+0

**并且,您可以请指定您的表格和您的要求吗?那么,我们可以轻松帮助你吗?** – 2013-06-27 11:51:34