【问题标题】:How do Ilist tables based on column name in sybase?sybase中如何根据列名列出表?
【发布时间】:2011-06-02 17:48:53
【问题描述】:

如何列出数据库中包含具有给定名称的列的所有表?

【问题讨论】:

  • 你能说得更具体点吗?您想要一个表中的列列表,还是要查找包含列的所有表或其他内容?

标签: sybase


【解决方案1】:

试试这个:

select distinct object_name(id)
from syscolumns
where name = 'my_column_name'
order by object_name(id)

或者这样:

select distinct so.name
from syscolumns sc
  , sysobjects so
where sc.id = so.id
and   sc.name = 'my_column_name'
order by so.name

这就是你一直在寻找的吗?

【讨论】:

    【解决方案2】:

    您也可以使用 sp_columns 存储过程。

    sp_columns @column_name = '%column_name%'
    

    更多信息在这里:SyBooks Online (Getting Help On Database Objects)

    【讨论】:

      【解决方案3】:

      以下查询也可用于获取 column_name 和 table_name。

      这将帮助用户识别 column_name 所属的表。

      select distinct tbl_col.name as Field_name,tbl_object.name as Table_name
      from syscolumns tbl_col
        , sysobjects tbl_object
      where tbl_col.id = tbl_object.id
      order by tbl_object.name
      

      【讨论】:

      • 无价之宝。谢谢。
      • 确实是无价之宝
      【解决方案4】:

      试试这个:

      sp_columns @column_name = '%column_name%'
      

      【讨论】:

        猜你喜欢
        • 2019-01-11
        • 1970-01-01
        • 2016-01-15
        • 1970-01-01
        • 1970-01-01
        • 2021-08-18
        • 2021-09-08
        • 2018-01-30
        • 1970-01-01
        相关资源
        最近更新 更多