首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查我的ODBC数据源是否存在于PHP中?

问如何检查我的ODBC数据源是否存在于PHP中?
EN

Stack Overflow用户
提问于 2012-02-29 00:54:46
回答 2查看 10.9K关注 0票数 2

我有一个简单的项目,就是创建一个函数来检查mysql和odbc连接。我已经完成了为mysql创建函数,下面是我的示例代码:

代码语言:javascript
复制
function check() {
    $serverName = 'localhost';
    $userName = 'root';
    $password = '123';
    $db = 'sample';

    $conn = mysql_connect($serverName, $userName, $password);
    mysql_select_db($db, $conn);

    $trans = 'SELECT * FROM Labels';
    $trans_result = mysql_query($trans, $conn);

    if(!$trans_result) {
        die(mysql_error());
    } else {
        echo "connected";
    }
}

这个在检查mysql连接时对我有用。现在,我的问题是,是否可以创建这样的东西来检查我的odbc数据源连接?所以这就像

代码语言:javascript
复制
$conn = odbc_connect("spmuse1","" ,""); # Open connection.

$trans = "SELECT French FROM Labels";
$trans_result = odbc_exec($conn, $trans);

if(!$trans_result) {
    echo "error?";
} else {
    echo "connected";
}

你懂我说的意思吗?当我使用这段代码时,我总是有两个错误

警告: odbc_connect()函数. source连接: SQL错误:未找到Microsoft数据源名称且未指定默认驱动程序,SQLConnect中的SQL状态IM002

警告: odbc_exec():提供的参数不是有效的odbc_exec资源

请帮帮我!谢谢。

EN

回答 2

Stack Overflow用户

发布于 2012-02-29 01:01:55

首先,您需要决定odbc驱动程序的供应商,希望下面的示例对您有用

代码语言:javascript
复制
  <?php

     // Configure connection parameters
    $db_host        = "server.mynetwork";
    $db_server_name = "Dev_Server";
    $db_name        = "Dev_Data";
    $db_file        = 'c:\dbstorage\dev.db';
    $db_conn_name   = "php_script";
    $db_user        = "dbuser";
    $db_pass        = "dbpass";

    $connect_string = "Driver={Adaptive Server Anywhere 8.0};".
                "CommLinks=tcpip(Host=$db_host);".
                "ServerName=$db_server_name;".
                "DatabaseName=$db_name;".
                "DatabaseFile=$db_file;".
                "ConnectionName=$db_conn_name;".
                "uid=$db_user;pwd=$db_pass";

    // Connect to DB
    $conn = odbc_connect($connect_string,'','');

    // Query
    $qry = "SELECT * FROM my_table";

    // Get Result
   $trans_result= odbc_exec($conn,$qry);

  if(!$trans_result) {
    echo "error?";
  } else {
    echo "connected";
  }
?>
票数 0
EN

Stack Overflow用户

发布于 2014-01-10 21:10:52

我花了几天时间寻找一个简单的答案,并想出了一个对我有用的答案:

代码语言:javascript
复制
if (@odbc_connect("DBName","un","pw",SQL_CUR_USE_ODBC) == FALSE){
    echo "Database does not exist";
} else {
    $connection=odbc_connect("DBName","un","pw",SQL_CUR_USE_ODBC);
    echo "Database exists";
}

如果数据库不存在,@将取消基本错误,因此连接尝试将只返回false。当然,如果连接良好,那么它将创建连接对象。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9492137

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档