如何在不访问表的情况下查询数据库,更正数据库而不是表

时间:2010-06-17 07:23:58

标签: c# sql sql-server-2005 visual-studio-2008

使用的是c#sql vs 08 sql server 2005 express

无论何时何地使用sql select语句,它总是像

select  * from tablename

或计数声明 像alsi一样

select count something from table name

用于在表格上选择或执行任何操作,

我想知道我连接到的数据库中哪些表退出了!

所以喜欢

select alltablenames from database_name.

请指导。

5 个答案:

答案 0 :(得分:3)

就个人而言,我会使用Information_Schema.Tables& Information_Schema.Columns次视图,因为这些是Microsoft提供的视图。 (而不是使用sysobjects表)

答案 1 :(得分:1)

列出所有数据库表

USE YourDBName
GO 
SELECT *
FROM sys.Tables WHERE type='u' 

检查表是否存在于数据库中

IF EXISTS (SELECT 1 
    FROM sysobjects 
    WHERE xtype='u' AND name='tablename') 
        SELECT 'tablename exists.' 
ELSE 
        SELECT 'tablename does not exist.'

答案 2 :(得分:0)

以下查询返回SQL Server数据库中表的名称:

select name from sysobjects where xtype = 'U'

答案 3 :(得分:0)

请参阅http://database.ittoolbox.com/documents/finding-table-names-in-sql-18556 - 对所有表名的简单查询以及给定表的所有列。

答案 4 :(得分:0)

EXEC sp_tables