用listbox或者CListCtrl显示数据,自己操作

解决方案 »

  1.   

    我用ODBC和ListCtrl控件做过数据库方面的开发,我觉得用ListCtrl 控件效果很不错!你试试看!
      

  2.   

    我用CRecordSet 的Edit还不是一样,操作影响过多行,见鬼了真是!!!
      

  3.   

    使用CListCtrl来显示数据,这样,你可以进行更多的控制,添加,删除等都可以由你来实现,这个控件只起一个显示作用。
      

  4.   

    我曾经使用过CListCtrl,用它显示数据太慢了,想象如果有上万条记录时,从数据库中读出记录就要好长的时间。如果是你,你能忍受吗。
    我又试着使用外部打开记录,更改数据库,然后更新控件,但是第一条没事,第二条很慢(大约两分钟,我跟进去查看了一下,在CCommand::ReleaseCommand。),第三条死机。
    我想不是数据库定义的问题,本来就不必每个表都有主键,我看了Access,他又能比较方便的删除或修改,没有这种情况发生???
      

  5.   

    ??? 我想不是数据库定义的问题,本来就不必每个表都有主键,?
    不是吧,你的数据量大的时候,没有PK,你怎么不慢。
    你的问题可能是有完全相同的记录,(没有PK,就有这种可能的)
      

  6.   

    Eagle_118(语夜):
      “用它显示数据太慢了,想象如果有上万条记录时”......
       一次显示这么多数据给用户,好象不太合理啊。
      

  7.   

    我想CListCtrl没有一次添加多条记录的方法吧,而且即使是空记录(Item),到浏览时再显示,你也要先添加进这些空的ITEM啊,并且要求是对不同的数据类型编辑和显示时要有所区别,如有的下拉列表,有的弹出对话框.....,
    我用来测试的数据库只有几条记录,所以不存在数据量影响速度的问题。而且我访问的数据库类型还不一定,所以才用OLE DB。所以必须考虑出现相同记录,和没有主键的情况。
      

  8.   

    除了查询,都直接用CDatabase的ExecuteSQL,它给的界面就供显示
      

  9.   

    DataGrid好象不太好用, 用一下CGridCtrl控件试试,我想你会满意的!
      

  10.   

    ACCESS定义的确没这个问题(他本身就没有很好的数据性规范,只是方便使用而已),问题是你现在用的是MS SQL(如果我没猜错的话),两个级别、定义方式、安全环境及专业性是没办法比较的,主键还是其次,各个元组的属性你有确认过吗(EX:NULL的定义)?
      

  11.   

    原因:
    可能是有完全相同的记录,(没有PK,就有这种可能的)
    用你的条件:select 一下。 
      

  12.   

    其实都用SQL+ExecuteSQl就行了。
      

  13.   

    我希望能删除完全相同的几个记录中的指定记录号的记录。所以用SQL加ExecuteSQL是不成的。
    to lyneville:
      什么是“对具体的操作数据库具体记录”?该怎么做?
      

  14.   

    最终解决方法:
      select distinct ,将数据导入到另一个表,
      在Drop table --> Create Table(现在要PK了) ,
      重新Insert 数据。
    搞定@!
      

  15.   

    我用VC做数据库 记录有14万条 可浏览,del,add ,modify,input form a csv file(add records or del records) ,output a access file or a text file 
    my qq :50034821
    email [email protected]
      

  16.   

    w_j76() 请问学VC++有什么好的经验