Foxtable(狐表)用户栏目专家坐堂 → SQLserver问题


  共有4052人关注过本帖树形打印复制链接

主题:SQLserver问题

帅哥哟,离线,有人找我吗?
zhangxl1964
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:553 积分:5327 威望:0 精华:0 注册:2011/6/7 13:33:00
SQLserver问题  发帖心情 Post By:2013/9/13 9:02:00 [只看该作者]

老师:在SQLserver数据库中如何实现,从后台将另一个表中的某几个字段的记录有条件的引用到指定表中。关键是从后台引用!

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/9/13 9:04:00 [只看该作者]

看得不是很懂, 查询某几个字段可以
select 字段1,字段2,字段3 from 表A
带条件
select 字段1,字段2,字段3 from 表A  where 字段4=5

 回到顶部
帅哥哟,离线,有人找我吗?
zhangxl1964
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:553 积分:5327 威望:0 精华:0 注册:2011/6/7 13:33:00
  发帖心情 Post By:2013/9/13 9:13:00 [只看该作者]

Dim conn As New ADODB.Connection
Dim ConnString As String
Dim sql As String
Dim rs As New ADODB.Recordset
Dim QueryMonth As Date '自定义日期
Dim StartMonth As Date '月份第一天
Dim Num As Integer '员工编号
Dim dr2 As DataRow =e.DataRow
If e.DataRow("审核") = False And  e.DataCol.Name = "编号" Then
    If e.DataCol.Name= "日期"  Or e.DataCol.Name= "编号"
        C
        If conn.state <> 1 Then
            conn.Open (ConnString)
        End If
        
        Num=e.DataRow("编号")
        QueryMonth=e.DataRow("日期")
        StartMonth=CStr(Year(QueryMonth)) & "-" & CStr(Month(QueryMonth)) & "-1"
        sql="select  * from   合同记录 A where A.[编号]="& num & " And A.[登记月份]<=#" & QueryMonth & "# And (A.[辞退日期] Is null Or A.[辞退日期] >=#" & startmonth & "#) And A.[登记月份]=(Select max(合同记录.[登记月份]) As 登记月份 from 合同记录 where 合同记录.[编号]=" & num & " and 合同记录.[登记月份]<=#" & QueryMonth &"#)"
        rs.Open (sql, conn,1,1)
        If rs.RecordCount<>0
            e.DataRow("姓名")=rs.Fields("姓名").Value
            e.DataRow("部门")=rs.Fields("部门").Value
            e.DataRow("班组")=rs.Fields("班组").Value
            e.DataRow("基本工资")=rs.Fields("基本工资").Value
            e.DataRow("月度考核")=rs.Fields("月度考核").Value
            e.DataRow("公积金")=rs.Fields("公积金").Value
            e.DataRow("社会保险")=rs.Fields("社会保险").Value
            e.DataRow("独生费")=rs.Fields("独生费").Value
           
            
        End If
    End If
    
    rs.Close()
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:access代码.txt



 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/9/13 9:15:00 [只看该作者]

你这个直接设置数据源 使用SQLCOMMAND即可实现.没必要引用第三方. 另外没发现你代码的问题啊. 还是不懂你意思.

 回到顶部
帅哥哟,离线,有人找我吗?
zhangxl1964
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:553 积分:5327 威望:0 精华:0 注册:2011/6/7 13:33:00
  发帖心情 Post By:2013/9/13 9:19:00 [只看该作者]

刚才漏了一段
Dim conn As New ADODB.Connection
Dim ConnString As String
Dim sql As String
Dim rs As New ADODB.Recordset
Dim QueryMonth As Date '自定义日期
Dim StartMonth As Date '月份第一天
Dim Num As Integer '员工编号

If e.DataRow("审核") = False And  e.DataCol.Name = "编号" Then
    If e.DataCol.Name= "日期"  Or e.DataCol.Name= "编号"
        C
        If conn.state <> 1 Then
            conn.Open (ConnString)
        End If
        
        Num=e.DataRow("编号")
        QueryMonth=e.DataRow("日期")
        StartMonth=CStr(Year(QueryMonth)) & "-" & CStr(Month(QueryMonth)) & "-1"
        sql="select  * from   合同记录 A where A.[编号]="& num & " And A.[登记月份]<=#" & QueryMonth & "# And (A.[辞退日期] Is null Or A.[辞退日期] >=#" & startmonth & "#) And A.[登记月份]=(Select max(合同记录.[登记月份]) As 登记月份 from 合同记录 where 合同记录.[编号]=" & num & " and 合同记录.[登记月份]<=#" & QueryMonth &"#)"
        rs.Open (sql, conn,1,1)
        If rs.RecordCount<>0
            e.DataRow("姓名")=rs.Fields("姓名").Value
            e.DataRow("部门")=rs.Fields("部门").Value
            e.DataRow("班组")=rs.Fields("班组").Value
            e.DataRow("基本工资")=rs.Fields("基本工资").Value
            e.DataRow("月度考核")=rs.Fields("月度考核").Value
            e.DataRow("公积金")=rs.Fields("公积金").Value
            e.DataRow("社会保险")=rs.Fields("社会保险").Value
            e.DataRow("独生费")=rs.Fields("独生费").Value
           
            
        End If
    End If
    
    rs.Close()


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/9/13 11:32:00 [只看该作者]

简单点,用临时表处理更新:

 

http://www.foxtable.com/help/topics/2724.htm

 


 回到顶部