DBGrid新增一个列,这个列不连接数据表,怎样给这个列赋值了?

解决方案 »

  1.   

    要看你新增一个什么字段,比如是String型的,你可以这样写SQL语句:
    Select *,space(100) as mynewcolumn from table,这样,就对应产生一个新列,当然也可以显示在DBGrid中,100表示字段长度,相当于Dataset中新增了一个Varchar(100)的字段,当然,这个字段并非物理存在,只是方便你使用的虚拟字段,如果是其他类型就更好办,比如这样:
    Select *,1 as mynewcolumn1,True as mynewcolumn2 from table
      

  2.   

    忘了说一句:以上我所说的针对SQLServer数据库。
      

  3.   

    如果是计算字段,那么可以在OnCalFields中写上相关代码就可以了。
      

  4.   

    注意,楼楼楼楼上的有可能要出错,呵呵;
    -------------------------------------
    如果您觉的您对Delpih感兴趣或是很想学的更好些或者是对Delphi有更深的认识,我们可以一起交流;
    呵呵
    www.nxrs.net/bbs
    谢谢,别抛砖,特别是版主:)
      

  5.   

    没试过,楼上FORGOT说的绝对可用,我在想用默认值的方法不知行不?
      

  6.   

    TO: forgot(忘记forgot2000) 
    如果用Query组件可以SQL语句来控制,如果用Table组件怎么做了?
      

  7.   

    你到底想要实现什么功能?你如果用TTable组件,那么增加虚拟字段有什么意义?为什么不用TQuery,我到现在没有发现TTable能做而TQuery做不到的事,如果你非要用TTable,那么你只能连上临时表了,或者直接使用kbmMW吧!