Dim conn As New ADODB.Connection
Dim cmd As New ADODB.Command
Dim rs As New ADODB.Recordset
    conn.Open "Provider=OraOLEDB.Oracle.1;Password=……;Persist Security Info=True;User ID=……;Data Source=……"
    Set cmd.ActiveConnection = conn
    rs.CursorLocation = adUseClient
    cmd.CommandText = "select distinct code ,name from system where code=‘……'"
    rs.Open cmd, , adOpenStatic, adLockBatchOptimistic这个语句在vb里去不掉相同的行
而直接oraedit执行是可以的请问如何解决???

解决方案 »

  1.   

    关键是同样得语句在vb和oraedit里得到的结果不同啊
    oraedit的结果和预期的相同,
      

  2.   

    你看看这个也许就能够解决了。
    http://www.applevb.com/art/sql.htm
      

  3.   

    cmd.CommandText = "select distinct [code] ,[name] from [system] where [code]=‘……'"
        rs.Open cmd, , adOpenStatic, adLockBatchOptimistic
      

  4.   

    重要  涉及 DISTINCT 的语句的输出取决于列的排序规则或应用 DISTINCT 的表达式。有关不同排序规则的效果的更多信息,请参见 SQL Server 排序规则基础知识。 
      

  5.   

    SELECT A.[Item#] , color , Package .... FROM 表 INNER JOIN (SELECT DISTINCT [Item#] FROM 表) A ON 表.[Item#]  = A.[Item#]