【VB操作access数据库问题】

我现在有个小程序,程序目标是,5个数据a,b,c,d,e,a的范围是00000-99999,b的范围是00-99,c的范围是0000-9999,d的范围是00000000... 我现在有个小程序,程序目标是,5个数据a,b,c,d,e, a 的范围是00000-99999, b 的范围是00-99, c 的范围是0000-9999, d 的范围是0000000000-9999999999, e 的范围是0-9, 这5个字段合到一起就是一个产品的条码,其中a,b,c,这三个数据选定后基本不变,数据d每隔1s后会自动加一,数据e是校验位会根据a,b,c,d的变化而变化,最终A&B&C&D&E形成一个条码。并将该条码及其对应的数据a,b,c,d,e存到数据库的对应字段中。 现在问题是: 我想用vb操作一个指定的ACCESS数据库(excel也可以)如code128.mdb,表名也是code128,来自动保存a,b,c,d,e及A&B&C&D&E这六个数据,请问大侠该如何设置VB连接数据库,并自动增加数据库记录???? 展开
 我来答
干苑良冰洁
2019-07-23 · TA获得超过3802个赞
知道大有可为答主
回答量:3099
采纳率:28%
帮助的人:159万
展开全部
Public
Function
Get_New_Code()
As
String
Dim
aDB
As
New
ADODB.Connection
Dim
aR
As
New
Recordset
Dim
sCnn
As
String,
Ans
As
String
Dim
crc
As
Integer,
n
As
Long
'连接
sCnn
=
"Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="
&
App.Path
&
"\code128.mdb;Persist
Security
Info=False;Jet
OLEDB"
aDB.Open
sCnn
aR.Open
"code128",
aDB,
adOpenDynamic,
adLockOptimistic
aR.MoveFirst
'计算新的D,E,校验算法过程自己做。由于应该每一秒d加1,所以竖顷你表中应该有上次生成的时间。橘渗
'每次d
得加上两次读取相差的秒圆纤脊数。
n
=
aR!d
+
DateDiff("s",
aR!lasttime,
Now)
crc
=
get_crc(aR!A,
aR!b,
aR!c,
n)
'得出结果
Ans
=
Format(aR!A,
"00000")
&
Format(aR!b,
"00")
&
Format(aR!c,
"0000")
&
Format(n,
"0000000000")
&
Format(crc,
"0")
'保存
aR!lasttime
=
Now
aR!d
=
n
aR.Update
aR.Close
Set
aR
=
Nothing
aDB.Close
Set
aDB
=
Nothing
Get_New_Code
=
Ans
End
Function
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式