OBJECT_ID : 返回数据库对象标识号
例如:
use master
Select Object_Id(N'pubs..authors') //查看pubs数据库里的authors表的object_id对象标识号。
OBJECTPROPERTY : 返回当前数据库中对象的有关信息
语法 : OBJECTPROPERTY ( id , property )
例如:
OBJECTPROPERTY (object_id(N'authors') , N'ISTABLE') = 1
或
select * from dbo.sysobjects where Object_Id(N'myTable') AND OBJECTPROPERTY(id, N'IsTable') = 1
OBJECT_ID:返回数据库对象标识号。N是显式的将非unicode字符转成unicode字符,它来自 SQL-92 标准中的 National(Unicode)数据类型,用于扩展和标准化,在这里可以不用,写作object_id(PerPersonData)。
OBJECTPROPERTY:返回当前数据库中对象的有关信息。1表“真”。同样可以写成OBJECTPROPERTY(id, sUserTable) = 1。
整条语句的意思是判断数据库里有没有存在PerPersonData这样一张表。
整条语句可以简写成:
if exists (select * from sysobjects where objectproperty(object_id('PerPersonData'),'istable') = 1)
判断myTalbe对象是否是一个表。
If exists (select * from dbo.sysObjects
where id = Object_Id(N'myTable') and ObjectProperty(id, N'IsUserTable') = 1)
判断myProc对象是否是一个存储过程。
If exists (select * from dbo.sysObjects
where id = Object_Id(N'myProc') and ObjectProperty(id, N'IsProcere') = 1)
判断myFun对象是否是一个自定义、标量值函数。
If exists (select * from dbo.sysObjects
where id = Object_Id(N'myFun') and ObjectProperty(id, N'IsScalarFunction') = 1)
判断myFun对象是否是一个表值函数。
If exists (select * from dbo.sysObjects
where id = Object_Id(N'myFun') and ObjectProperty(id, N'IsTableFunction') = 1)
其他更多ObjectProperty属性的 property 值参考
http://technet.microsoft.com/zh-cn/library/ms176105.aspx
❷ 如何通过一个值查找到值所在的SQL数据库表
1、当这个数据为数据库中的某一列的列名的时候,我们如何通过该列名获取到表名呢?登录mysql的客户端,并输入sql语句select * from columns where column_name='DEPT_NAME';其中DEPT_NAME为查找的列名。
❸ sql语句怎么查询指定表的列名
如果用mysql 的话 mysql> desc 表名
❹ sql 如何查一个字段在哪个数据库哪个表
use[数据库a]
selecta.name'TableName'
fromsys.tablesa
innerjoinsys.columnsbona.object_id=b.object_id
whereb.name='fa'
❺ SQL中只知道字段名,要查在哪张表怎么查啊
这个每种数据库不一样的
db2中:select TABNAME from syscat.columns where tabschema='x' and colname='字段名'
这里,x指的是db2的模式。
mysql中:select TABLE_NAME from information_schema.columns where table_schema='y' and column_name='字段名'
这里y指的是数据库的名称。
其他数据库应该也会有个系统表存放这些信息,表名以及这些字段的含义都是可以见面知义的,按着这个思路相信你能找到
❻ 怎样用SQL语句查询一个数据库中的所有表
1、打开Microsoft SQL Server 2012,选中需要查询所有表的数据库。
❼ mysql查询一个列名都存在于哪些表
Mysql使用Describe命令判断字段是否存在 工作时需要取得MySQL中一个表的字段是否存在 于是就使用Describe命令来判断 mysql_connect('localhost', 'root', 'root'); mysql_select_db('demo'); $test = mysql_query('Describe cdb_posts first'); $test = mysql_fetch_array($test); $test[0]返回的是该字段的名 工作时需要取得MySQL中一个表的字段是否存在 于是就使用Describe命令来判断 mysql_connect('localhost', 'root', 'root'); mysql_select_db('demo'); $test = mysql_query('Describe cdb_posts first'); $test = mysql_fetch_array($test); $test[0]返回的是该字段的名称,比如我要查询first字段,返回的就是first 如果此字段不存在返回的就是NULL,通过这样可以判断一个字段是否存在 附加资料: describe命令 一、describe命令用于查看特定表的详细设计信息,例如为了查看guestbook表的设计信息,可用: describe guestbook 二、可通过”show comnus”来查看数据库中表的列名,有两种使用方式: show columns form 表名 from 数据库名 或者: show columns from 数据库名.表名 三、用describe命令查询具体列的信息 describe guestbook id 就是查询guestbook中id字段的列信息 {DESCRIBE | DESC} tbl_name [col_name | wild] DESCRIBE 是 SHOW COLUMNS FROM 的缩写。DESCRIBE 提供有关一个表的列信息。col_name 可以是一个列名或是一个包含 SQL 通配符字符 “%” 和“_” 的字符串。没有必要用引号包围字符串。 如果列类型不同于你所期望的基于一个 CREATE TABLE 语句建立的列,注意 MySQL 有时会更改列类型。