用table 、 datasource、 dbgrid。设置table的databasename来连接某SQL SERVER数据库显示在dbgrid中。后来我修改库结构,新增加了一字段。table设置Active为true后dbgrid中却没有显示这一新字段。
为什么?后来我重新设置一个ODBC连接也不行。后来没办法我又重新建立一个应用程序才可以。但是换成ADOtable就可以。有人能给讲一下不?谢谢
为什么?后来我重新设置一个ODBC连接也不行。后来没办法我又重新建立一个应用程序才可以。但是换成ADOtable就可以。有人能给讲一下不?谢谢
你试退出delphi再进看看。
你这样就可以了with ADOQuery1 do
begin
sql.close;
sql.clear;
sql.add('select * from table');
open;
end;DataSource1.DataSet := ADOQuery1;
DBGrid1.DataSource := DataSource1;这样就可以全部显示了,但是DBGrid中字段名是你数据库中的字段名
比如数据库中是英文这里也就是英文
你可以在把上面的sql语句改一下
使用别名
比如:
select name as 姓名,age as 年龄.........from table;
退出DELPHI再进入也不行。
照楼上的,我新建立了两个button做测试,还是ADOquery可以,但query就显示不全。不解
button1 添加代码
DataSource1.DataSet := ADOQuery1;
DBGrid1.DataSource := DataSource1;
with ADOQuery1 do
...
sql.add('select * from table');
...
————————
button2添加代码
DataSource1.DataSet := Query1;
DBGrid1.DataSource := DataSource1;
with Query1 do
...
sql.add('select * from table');
...
我真不明白,都是一样的设置。ADOquery可以,query就不可以。这种情况你现关闭Table再打开就会自动出现你添加的字段了。??如何关闭再打开?query的Active设置为False后再设置为true?