分类: 电脑/网络 >> 程序设计 >> 其他编程语言
问题描述:
Private Sub cmdOk_Click()
If Admin_NameText = "" Or Admin_PassWordText = "" Or Admin_RegPassWordText = "" Then
MsgBox "用户名或密码不能为空,请返回输入!", vbExclamation + vbOKOnly, "提示!"
Admin_NameSetFocus
ElseIf Admin_PassWordText <> Admin_RegPassWordText Then
MsgBox "两次密码输入不一致,重新输入!", vbExclamation + vbOKOnly, "提示!"
Admin_PassWordText = ""
Admin_RegPassWordText = ""
Admin_PassWordSetFocus
Else
Dim Conn As New ADODBConnection
Dim StrSql As String
ConnOpen "Provider=MicrosoftJetOLEDB40;Data Source=" & AppPath & "\Data\Hydatamdb" & ";Mode=ReadWrite;Persist Security Info=False"
'向数据库HYDATA里面的ADMIN表添加窗体上文本框里面的内容。这里应该怎么写呢?
'谢谢了
ConnClose
End If
End Sub
================================
ACCESS名“HyData” 管理员表名:“Admin”里面的表头是:
Admin_ID,Admin_User,Admin_Pwd,Admin_HomeTel,Admin_Mobile
==================================
AddFrom窗体的文本框
Admin_Name,Admin_PassWord,Admin_RegPassword,Admin_HomeTel,Admin_Mobile
=其中:Admin_PassWord,Admin_RegPassword 这两个判断两次密码是否一至。。
各位帮我看看。
解析:
xm= RequestForm("xm")
xb= RequestForm("xb")
ah= RequestForm("ah")
qqh= RequestForm("qqh")
set conn=ServerCreateObject("ADODBConnection")
connopen "DRIVER=Driver do Microsoft Access (mdb);DBQ="&ServerMapPath("data\db1mdb")
into_db3 = "INSERT INTO 表3 ( xm, xb, ah ,qqh) VALUES('"+xm+"','"+xb+"','"+ah+"','"+qqh+"')"
conn3Execute(into_db3)
conn3Close
解释下:
上面的
xm= RequestForm("xm")
xb= RequestForm("xb")
ah= RequestForm("ah")
qqh= RequestForm("qqh") 是从表单中的文本框获取值
set conn=ServerCreateObject("ADODBConnection")
connopen "DRIVER=Driver do Microsoft Access (mdb);DBQ="&ServerMapPath("data\db1mdb")
这两句是以字符串方式建立一个数据库连接
db1mdb就是access数据库名字
data 是站点中用来存放数据库的文件夹,这儿路径一定得对才行.
into_db3 = "INSERT INTO 表3 ( xm, xb, ah ,qqh) VALUES('"+xm+"','"+xb+"','"+ah+"','"+qqh+"')" conn3Execute(into_db3)这句就是将获得的值插入数据库了,表3是数据库中的一张表,插入时注意对应字段.
conn3Close
关闭数据库连接, *** 作完成后关闭数据库连接.
当然上面的语句都得在一对定界符<% %>之间.
你自己做时帮相应字段改了就可以了.
还有不懂可以加QQ
一般一个表中应该有一个主键
只要主键不重复就可以了
要实现你的功能只要在添加之前查询一下当前是否存在这个主键就可以了
例如表的主键为“学号”,要插入一条记录为学号=111(字符型),姓名=士大夫
那么在插入之前查询一下学号中是否有为111的
即:select from 表名 where 学号="111"
如果查询的记录个数大于0,那么就应该
msgbox "记录重复!"
并且不执行往数据库中添加记录
首先,你可能首先要插入的最小单位使用的数据库字段的查询,如您的最小单位X16
然后使用查询语句“SELECT
COUNT()FROM
[表名]定位LIKE%X16%“作为判决的结果是不=
0不能重复
第二个问题,只要程序记录用户的 *** 作,基本上在数据库中建立一个记录表,然后在所有倍以上每个数据 *** 作发送到日志表中的记录的 *** 作内容的描述,这样可以使记录的所有数据库 *** 作
两个方法
一个是性别再用一个字段
一个是
sql= "select from m_data where m_name like '" & 要填加的姓名变量 & "%'"
一个例子:
在保存时先打开数据库,用现在输入的关键字到数据库中查找是否有该记录,如果有则退出该过程,也就是不保存,如果没有,则继续该 *** 作
Private Sub Command1_Click()
Set cn = New ADODBConnection
Set rs = New ADODBRecordset
cnCursorLocation = adUseClient
cnOpen "Provider=MicrosoftJetOLEDB40;Data Source=" & AppPath & "\客户信息mdb" '打开数据库
sql = "select from khxx where 客户编号= '" & Text1(0)Text & "'"
rsOpen sql, cn, 1, 1
If rsRecordCount > 0 Then '根据关键字查找数据库是否有该记录,如果有
MsgBox "已有相同编号,请区别!", 48, "错误提示" '报错
Text1(0)Text = "" '清除已经输入的
Text1(0)SetFocus '光标移动到该位置
Exit Sub '退出此过程
End If
rsClose
Set rs = Nothing
cnClose
Set cn = Nothing '关闭数据库
end sub
Text不要和Adodc1绑定,这样:
Private Sub Command1_Click()
Adodc1RecordSource = "select from 编号 where 编号='" & Text1Text & "'"
If Adodc1RecordsetRecordCount > 0 Then
MsgBox "记录己存在"
Else
MsgBox "记录不存在"
Adodc1RecordsetAddNew
Adodc1Recordset("编号")=Text1Text
Adodc1Recordset("其他字段")=Text2Text
'
Adodc1RecordsetUpdate
End If
End Sub
Private Sub Form_Load()
'这里就不用AddNew了
End Sub
以上就是关于VB向数据库添加数据(有代码)全部的内容,包括:VB向数据库添加数据(有代码)、vb禁止添加与数据库某条记录完全相同的记录怎么做、vb数据库重复判断等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)