Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

数据追加的问题

初学者  发表于:2015-06-30 16:51:18  
复制

我希望将在其他计算机上录入的且具有相同数据结构和一对多关系(如:A为父表,B为子表)的A和B两表的数据追加到当前的对应数据表中,并保证关联字段不重复,如何实现?望能帮忙解决。

 

Top
煮江品茶 发表于:2015-06-30 19:54:19

用Dcount控制即可



杜超 发表于:2015-06-30 20:44:24

追加查询

INSERT INTO SELECTSELECT INTO 两种表复制语句-Access软件网

http://www.accessoft.com/article-show.asp?id=5778

追加查询(初学者一看就会)-Access软件网

http://www.accessoft.com/article-show.asp?id=6925

[推荐]几种追加查询的制作-Access软件网

http://www.accessoft.com/article-show.asp?id=3327

把表1中与表2不同的记录追加到表2[Access软件网]

http://www.accessoft.com/article-show.asp?id=7278



初学者 发表于:2015-06-30 21:36:51

"用Dcount控制即可"

能否说得具体的吗?




yuhong 发表于:2015-07-01 17:22:56

我自己用的向U盘追加传送数据的一个函数,不知道能不能帮到你!

Function toUpan()

On Error GoTo ErrorHandler
Dim ss As Integer
Dim fn As String
Dim pan As String
Dim StrDrive As String
Dim StrDriveArray() As String
Dim d As Object
Dim StartPos As Integer
Dim fs As Object
Dim IsNo As Boolean
Dim dName As String
Dim varResult As String
Dim dbs As Database, rst As Recordset
Dim getID As String
fn = "UMwzl004\Data.mdb"
On Error Resume Next
Set fs = CreateObject("Scripting.FileSystemObject")
StrDrive = "B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z"
StrDriveArray = Split(StrDrive, ",")
For StartPos = 1 To UBound(StrDriveArray)
Set d = fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName(StrDriveArray(StartPos) & ":\\")))
If d.DriveType = 1 Then


   If d.SerialNumber = "1946631455" And Len(Dir(dName & ":\" & fn)) <> 0 Then '优盘、优盘号码正确、优盘内文件存在
   IsNo = True
   dName = d.DriveLetter
   Exit For
   End If
End If
Next


If IsNo = False Then
MsgBox "系统未检测到专用U盘!或者U盘内没有指定文件!"
Else
 If MsgBox("你将上传数据ID号为" & Me.sfrList.Form!销售ID & ",确定后不能更改,请慎重!", vbYesNo, "数据上传到指定U盘窗体") = vbNo Then Exit Function
varResult = Nz(Me.sfrList.Form!货品去向, "无")
Set dbs = OpenDatabase(dName & ":\" & fn)
Set rst = dbs.OpenRecordset("货品销售明细表", dbOpenDynaset)
rst.MoveLast
MsgBox rst.RecordCount
getID = inserSet_getID1(dbs, Me.sfrList.Form!货品所在位置, Me.sfrList.Form!业务员, Me.sfrList.Form!销售时间, varResult)
 CurrentDb.Execute "INSERT INTO " & dName & ":\" & fn & ".货品销售明细表" _
 & "(销售ID,货品名称,规格,数量,金额,奖金,费用,结算方式,日志) SELECT " _
 & getID & " AS 销售ID,货品名称 ,规格,数量 ,金额,奖金,费用,结算方式," _
 & ff() & "& 日志 AS 表达式 FROM 货品销售明细表 where 销售ID=" & Me.sfrList.Form!销售ID
CurrentDb.Execute " UPDATE 货品销售表 SET 货品销售表.备注 = 货品销售表.备注& 'ok' where 销售ID=" & Me.sfrList.Form!销售ID
Me.sfrList.Form.Requery
  MsgBox "上传完毕!"
End If
ExitHere:
  Set dbs = Nothing
Set d = Nothing
Set fs = Nothing
    Exit Function
ErrorHandler:
    RDPErrorHandler Me.Name & ": 操作没有成功"
    Resume ExitHere
Set dbs = Nothing
Set d = Nothing
Set fs = Nothing


End Function



yuhong 发表于:2015-07-01 17:25:08
Public Function ff() As String
ff = MySQLText("*" & Me.sfrList.Form!销售ID & "*")
End Function


yuhong 发表于:2015-07-01 17:25:43
Public Function inserSet_getID1( _
                   dbrst As Database, _
                     goodsAdress As String, _
                     operater As String, _
                       changeDate As Date, _
                        goodsForm As String _
                        ) As String '向主表插入数据并返回自动编号值
  
 Dim rstParent As dao.Recordset


 Dim rstID As String
 


Set rstParent = dbrst.OpenRecordset("货品销售表", dbOpenDynaset)
With rstParent
.AddNew
!货品所在位置 = goodsAdress
!业务员 = operater
!销售时间 = changeDate
!货品去向 = goodsForm
.Update
.Bookmark = .LastModified
   rstID = rstParent("销售ID")
End With
rstParent.Close
inserSet_getID1 = rstID
End Function


初学者 发表于:2015-07-01 21:37:25
初学者,要好好学习,学习!!!!

总记录:7篇  页次:1/1 9 1 :