以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  后台查询,取值  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=71557)

--  作者:cuicuibing
--  发布时间:2015/7/14 8:33:00
--  后台查询,取值
表a 表样式
                  分厂          工段        合同        1           2       
                   A             甲           有          10         50
                   A             甲           无           9          48
                   B             乙           有          20         60
                   B             乙           无           19        58
                   C             丙           有           30        70
                   C             丙           无           29        68

根据当前的2个表,从后台搜索符合条件的记录,让表2列获取对应的值。
表一          分厂          工段        合同                      表二          方式     数值
                   A             甲           有                                       1
                   B             乙           无                                       2


         Dim Tb As Table = Tables("表一")
        Dim tb1 As Table = Tables("表二")
        Dim cur1 As String
        cur = tb.Current("工段")
        cur1 = tb1.current("方式")
        Dim cmd1 As New SQLCommand
        Dim dt As DataTable   ‘后边如果想获取行的数据,这样定义是否正确
        cmd1.C \'设置数据源名称
        cmd1.commandText = "Select * Fro m [表a] Where [工段] = \'"& tb.Current("工段") &"\'and [分厂] = \'"& tb.Current("分厂") &"\' and [合同] = \'"& tb.Current("合同") &"\' "
        If cmd1.ExecuteScalar = 0 Then 
            MessageBox.Show("无此标准工资!")
            Return
       end if
        if  cmd1.ExecuteScalar = 0  then
            MessageBox.Show("标准不是唯一的!")
          Return
        else  
           
         dt = cmd1.ExecuteReader()       这里是否正确。
         
        Tables(“表二").Current("数值")= dt.datarow("cur1")    这里如何获取查找到唯一一条记录的,对应列的值,现在不正确
        
        End If

                              
                              


--  作者:大红袍
--  发布时间:2015/7/14 9:16:00
--  



dt = cmd1.ExecuteReader()
If dt.DataRows.Count = 0 Then
    MessageBox.Show("无此标准工资!")
    Return

ElseIf dt.DataRows.Count > 1 Then   
    MessageBox.Show("标准不是唯一的!")
    Return
Else
    Tables("表二").Current("数值")= dt.DataRows(0)("cur1")   这里如何获取查找到唯一一条记录的,对应列的值,现在不正确
End If