DBGrid中怎樣顯示SQL中固定為空的一列
求助:DBGrid中怎樣顯示SQL中固定為空的一列?有一段SQL:select emp_no emp, password passw, mark from
求助:DBGrid中怎樣顯示SQL中固定為空的一列?
有一段SQL:
select emp_no emp, password passw, '' mark from user_table;
需要將這一段SQL返回的數據集顯示到DBGrid中,但是執行后DBGrid中不會顯示“mark”這一列,請問各位有辦法解決么?
PS:前提是就只能用DBGrid控件,不能對DBGrid設定固定的Column,不過可以修改SQL語句
[解决办法]
謝謝,我有找,不過沒有和我一樣的情況,請問有方法么?
我的“mark”這一列就是永遠為空值(但是需要保留這一列),可是在DBGrid中就自動將這一列除掉了,不顯示出來~~~
按理说不会,以前也有这么写SQL,可没有遇到你说的情况。。。
[解决办法] select emp_no emp, password passw, '' mark from user_table;
没编辑过dbgrid的话,照理应该有 mark这一列的啊?
'' mark 换 null as mark 试试看吧
[解决办法]
[解决办法]写了很多年的Delphi程序,还真没碰到过这样的情况。
[解决办法]之前写报表时,如果这列的内容还没加,我都是先用NULL或是''来先生成这个列的。
因为有时SQL语句会写到视图中,这样,如果要改报表内容,很多时候不用改程序,直接在数据库中改视图就可以了。
但真的没碰到过这种情况。
如果是用ADOQuery这样的控件连接的,可以看看ADOQuery中是不是限制了要显示的字段。
[解决办法]首先看adoquery是不是设置了固定列,然后看dbgrid是不是设置了固定列,除此之外,不会有其他的原因。
[解决办法]回:#12 & #13
1. 我用的是BDE的Query控件,我們用的Oracle,還是用Query方便些~~~
剛剛我用ADOQuery測試了一下,是可以顯示出來的~~~
2. dbgrid沒有設定固定列。
所以现在我有点怀疑是Query控件的问题了,但是我还没确定问题在哪里?
有人注意过这一点么?还望指点!
Oracle没用过,但MSSQL 中你可将字段设定一个类型就没问题,如:cast('' as varchar(10)) as Mark