hur.cn - 华软网

 热门搜索

数据窗口中数据列的列名中的前缀如何去除?

  作者:未知    来源:网络    更新时间:2017/9/29
当数据源由多个表组成时,新增加的列都会在列名前加上表名做前缀,例如table_column.
  而列名并不重复时,这种前缀显得没有必要。而且在编程时,有的表名称很长使得列名很容易写错。
  如果进入数据窗口的sql定义修改,发现这些列名的前缀很难去掉。即使删除再重选或直接用sql语句写也没有用。
  请问有什么好办法可以不重画数据窗口而去掉没有必要的列名前缀?
------华软网友回答------
多表没办法去的,如果觉得不方便

就用“AS ” 或者 “=”




select aa = table1.aa ,bb = table2.bb from table1,table2

或者这样写法

select a.aa,b.bb from  table1 a ,table2 b 


------华软网友回复------
select a.a,b.b from  table1 a ,table2 b
------华软网友回复------
SQL语句,可以写为:
如:
  Select Table1.a,Table2.b From Table1 As a,Table2 As b Where……;
------华软网友回复------
导出dw,然后用记事本打开,将column的name替换掉就可以了,然后倒入
------华软网友回复------
SELECT 后把列名改掉就行了.
------华软网友回复------
我告诉你一个不用SQL教本的方法,就在你设计数据窗口对象的设计视图中,你只要点选列字段,然后在General属性选项卡中在Name中把table_column,的table删除就可以了。或者同在数据窗口对象设计视图的Column Specifiction -dw_***中的Dbname项,改table_column为column就可以了,其实就是一个列的别名,在程序中代表该列。
------华软网友回复------
楼上多位提到使用别名,这是可以的。
但是这样取到的DBname就不对了,而DBname值是目前我做的项目中必须要取的。不知道这是不是pb 的bug?
------华软网友回复------
sql语句如下:
 SELECT a.receiveid,      
         a.subject,   
         a.abstract,     
         b.confirmadvice,           
         b.confirmer,   
         b.confirmdate, 
         c.checkadvice,   
         c.checker,   
         c.checkdate  
    FROM (sm_mail_receiveregister as A left JOIN 
sm_mail_receiveconfirm as B ON 
b.receiveid = a.receiveid)
 LEFT JOIN sm_mail_receivecheck as C ON
 a.receiveid = c.receiveid  
这样有一个问题:在select面板中converts to graphics 错误。
我们姑且不管它,但是这潜伏着一个问题,就是列的dbname全部变成了 sm_mail_receivecheck.(我调试时是这样的,大家可以试一下)。
请各位高手帮忙看看这个问题有没有解决的方法。
------华软网友回复------
再顶一下
------华软网友回复------
在设置数据窗口时把这些要用的列全在设计计算列(cumputed columns)中去引用。
比如你要用表sm_mail_receiveregister中的receiveid列,你就去增加一个计算列  sm_mail_receiveregister.receiveid as "我要的列名称"
------华软网友回复------
用我说的方法不能解决你的问题么?(同在数据窗口对象设计视图的Column Specifiction -dw_***中的Dbname项,改table_column为column就可以了),我觉得可以的哦。可能我的水平肤浅吧,帮你顶!共同学习!
------华软网友回复------
可以了吧。
------华软网友回复------
其实对于我的情况, princelily(百合) 的思路确实可以。既然没有更多的意见,那我就揭帖了。      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。