MS SQL Server Concepts and Programming Question:
Download Questions PDF

How To List All Tables in the Database using odbc_tables()?

Answers:

Answer #1
If you want to get a list of all tables in the database, you can use the odbc_tables() function, which can actually be used to list all tables and views in the database. The syntax of odbc_tables() is:

$result_set = odbc_tables($connection_object,
$qualifier, # database name for SQL Server
$owner, # schema name for SQL Server
$name, # table or view name for SQL Server
$type # valid type names are TABLE and VIEW
)
#- The returning result set contains 5 fields:
#- TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, TABLE_TYPE,
#- REMARKS

The owner and name arguments accept search patterns ('%' to match zero or more characters and '_' to match a single character).

The tutorial example below shows you how to get a list of tables in the current database, GlobalGuideLineDatabase, which is hard coded in the DSN definition:

Answer #2
<?php
$con = odbc_connect('ggl_SQL_SERVER','sa','GlobalGuideLine');

# odbc_tables($con, $database, $schema, $name, $type);
$res = odbc_tables($con, 'GlobalGuideLineDatabase','%','%','TABLE');
while (odbc_fetch_row($res)) {
print(" ".odbc_result($res,1));
print(", ".odbc_result($res,2));
print(", ".odbc_result($res,3));
print(", ".odbc_result($res,4));
print(", ".odbc_result($res,5)." ");
}
odbc_free_result($res);

odbc_close($con);
?>

If you run this script, you will get something like:

GlobalGuideLineDatabase, dbo, ggl_links, TABLE,
GlobalGuideLineDatabase, dbo, ggl_links_copy, TABLE,
GlobalGuideLineDatabase, dbo, ggl_links_indexed, TABLE,
GlobalGuideLineDatabase, dbo, ggl_random, TABLE,
GlobalGuideLineDatabase, dbo, ggl_rates, TABLE,
GlobalGuideLineDatabase, dbo, ggl_team, TABLE,
GlobalGuideLineDatabase, dbo, tipBackup2, TABLE,

Download MS SQL Server Interview Questions And Answers PDF

Previous QuestionNext Question
How To Create Prepared Statements using odbc_prepare()?How To List All Columns in a Table using odbc_columns()?