Sql Server按索引名查找所属表名

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 11:57 点击:
引言:
 
    我们在做较新的Java项目时,如果数据库添加了索引,出错后,会在Java侧捕获到这些异常信息。特别是数据库索引命名很“丑”的情况下,看着所报的“索引index_A(或者唯一索引index_A)冲突”,就只好一个个表猜着找。其实在sqlServer下,可以通过SQL语句直接用这个所报的索引名称“index_A”查出所属表。
 
正文:
 
    sqlServer下,根据索引名查询所属表名,可以采用如下SQL语句:
Sql代码 
--------------------------------------------  
-- search the table name by an index name  
--------------------------------------------  
 
-- define the indexs name  
DECLARE  @index_name NVARCHAR(200)  
 
-- set the index_name here  
SET @index_name = NPK__FILE_TABLE_REL__208E6DA8; 
 
SELECT o.name  
FROM   sys.objects o  
WHERE  o.object_id = (SELECT s.object_id  
                      FROM   sys.stats s  
                      WHERE  s.name = @index_name)  
 
    特别是在表很多的情况下,相当方便。

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • sql常见面试题
      • SQL SERVER 2005性能之跟踪
      • SQL编程(一)
      • LINUX上RMAN自动备份脚本
      • sql server面试题
      • 如何将多个SQL查询统计结果一次显示出来
      • 浅谈SQL Server中的事务日志(三)----在简单恢复模式下日志的角色
      • SQL小技巧系列 --- 行转列合并
      • sql server 列转行
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1