有事问,如何用SQL语句判断一张表中的字段名是否存在? 
比如
   select 字段 from table 如何判断字段在表中是否存在,用sql实现

解决方案 »

  1.   

    如果是oracle中,会将你的表信息保存在数据字典中,查查就可以了别的数据库应该也有的
      

  2.   

    --sql 2k
    syscolumns 列信息
    sysobjects 表信息
    select * from syscolumns c,sysobjects o
    where c.id=o.id
    and o.name='table'
      

  3.   

    SELECT count(*)
    FROM syscolumns 
    where id=(select id From sysobjects where name='table') and name='字段'如果查出的值为0时,说明‘字段’不存在
      

  4.   

    use sql 'select field_name from table; ', then catch exception..
      

  5.   

    With ADOquery1 do
       begin
       close ;
       sql.Clear ;
       sql.Add('select * from syscolumns where name = '+''''+'TEL'+''''+' and id = (select id from sysobjects where name = '+''''+'hd'+Edit1.Text+''''+')') ;
       open ;
       end ;
    以上是我的原代码。判断'hd'+Edit1.Text 这个表中是否存在[TEL]字段,
    if ADOquery1.RecordCount = 1 then
       begin
       showmessage ('存在字段') ;
       end ;
    明白了吗?
      

  6.   

    --sql 2k
    syscolumns 列信息
    sysobjects 表信息
    select * from syscolumns c,sysobjects o
    where c.id=o.id
    and o.name='table'
      

  7.   

    syscolumns 列信息
    sysobjects 表信息
    都可以查找,
    当然如果你觉得复杂,在搜索出来后在query中判断也是可以的。
      

  8.   

    KAO!也不讲明白究竟是什么后台数据库!算了,给你一个通用的方法好了!BDE链接方式:
      Table1.GetFieldNames(List: TStrings);ADO链接方式:
      ADOTable1.GetFieldNames(List: TStrings);然后再在List中搜索字段就得到结果了!
      

  9.   

    你用ODBC连上SQL后,然后再在窗体上边随便搞些数据源控件和数据连接控件!只要你一设好别名,就可以知道那些表是存在的啦!