MS SQL Server Concepts and Programming Question: Download MS SQL Server PDF

How To List All DSN Entries on Your Local Machine using odbc_data_source()?

Tweet Share WhatsApp

Answers:

Answer #1If you are interested to know what DSN entries are available on your local machine, you can use odbc_data_source($con, SQL_FETCH_FIRST) and odbc_data_source($con, SQL_FETCH_NEXT) in a loop to list all DSN entries defined on your local machine. The tutorial script below shows a good example:
<pre><?php
$con = odbc_connect('ggl_SQL_SERVER','sa','GlobalGuideLine');
if (!$con) {
print("There is a problem with the connection. ");
} else {
print("The ODBC connection object is ready. ");
$list = odbc_data_source($con, SQL_FETCH_FIRST);
while ($list) {
foreach ($list as $key => $value) {
print($key . " = " . $value . " ");
}
$list = odbc_data_source($con, SQL_FETCH_NEXT);
}
odbc_close($con);
}
?></pre>

Answer #2If you run this script, you will get something like this:

The ODBC connection object is ready.
server = MS Access Database
description = Microsoft Access Driver (*.mdb)
server = dBASE Files
description = Microsoft dBase Driver (*.dbf)
server = Excel Files
description = Microsoft Excel Driver (*.xls)
server = ggl_SQL_SERVER
description = SQL Server

Warning: odbc_data_source(): SQL error: [Microsoft]
[ODBC SQL Server Driver][SQLServer]Changed database context
to 'GlobalGuideLineDatabase'., SQL state 01000 in SQLDataSources in
C: estggl_center.php on line 12

The error message seems to be very strange. But the result is correct.

Download MS SQL Server PDF Read All 394 MS SQL Server Questions
Previous QuestionNext Question
How To Connect to a SQL Server using odbc_connect()?How To Execute a SQL Statement using odbc_exec()?