VB向数据库添加数据(有代码)

VB向数据库添加数据(有代码),第1张

分类: 电脑/网络 >>程序设计 >>其他编程语言

问题描述:

Private Sub cmdOk_Click()

If Admin_Name.Text = "" Or Admin_PassWord.Text = "" Or Admin_RegPassWord.Text = "" Then

MsgBox "用户名或密码不能为空,请返回输入!", vbExclamation + vbOKOnly, "提示!"

Admin_Name.SetFocus

ElseIf Admin_PassWord.Text <>Admin_RegPassWord.Text Then

MsgBox "两次密码输入不一致,重新输入!", vbExclamation + vbOKOnly, "提示!"

Admin_PassWord.Text = ""

Admin_RegPassWord.Text = ""

Admin_PassWord.SetFocus

Else

Dim Conn As New ADODB.Connection

Dim StrSql As String

Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0Data Source=" &App.Path &"\Data\Hydata.mdb" &"Mode=ReadWritePersist Security Info=False"

'向数据库HYDATA里面的ADMIN表添加窗体上文本框里面的内容。这里应该怎么写呢?

'谢谢了

Conn.Close

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= Request.Form("xm")

xb= Request.Form("xb")

ah= Request.Form("ah")

qqh= Request.Form("qqh")

set conn=Server.CreateObject("ADODB.Connection")

conn.open "DRIVER=Driver do Microsoft Access (*.mdb)DBQ="&Server.MapPath("data\db1.mdb")

into_db3 = "INSERT INTO 表3 ( xm, xb, ah ,qqh) VALUES('"+xm+"','"+xb+"','"+ah+"','"+qqh+"')"

conn3.Execute(into_db3)

conn3.Close

解释下:

上面的

xm= Request.Form("xm")

xb= Request.Form("xb")

ah= Request.Form("ah")

qqh= Request.Form("qqh") 是从表单中的文本框获取值

set conn=Server.CreateObject("ADODB.Connection")

conn.open "DRIVER=Driver do Microsoft Access (*.mdb)DBQ="&Server.MapPath("data\db1.mdb")

这两句是以字符串方式建立一个数据库连接

db1.mdb就是access数据库名字

data 是站点中用来存放数据库的文件夹,这儿路径一定得对才行.

into_db3 = "INSERT INTO 表3 ( xm, xb, ah ,qqh) VALUES('"+xm+"','"+xb+"','"+ah+"','"+qqh+"')" conn3.Execute(into_db3)这句就是将获得的值插入数据库了,表3是数据库中的一张表,插入时注意对应字段.

conn3.Close

关闭数据库连接, *** 作完成后关闭数据库连接.

当然上面的语句都得在一对定界符<% %>之间.

你自己做时帮相应字段改了就可以了.

还有不懂可以加QQ***********

有两种方法,一、双击控件,就可以写该控件的代码。二、选择控件事件,在事件里写代码。

Private

Sub

Command1_Click()

'代码

End

Sub

Private

Sub

Form_Load()

'代码

End

Sub

由于list是但列数据表格,所以你的要求其实用grid之类的是最容易实现的。用list也可以实现,但需要用代码软实现。

在窗体上添加1个ListBox,1个TextBOX,3个CommandButton控件。把ListBox的Sorted属性改为True。该属性为让ListBox控件可以自动按字母排序。由于Sorted属性,所以要把序号用00占位,否则排序结果将为

1、10、100、11、12……

然后粘贴如下代码:

Private Sub Command1_Click()

On Error Resume Next

'添加一个新信息

Me.List1.AddItem Right("00" &Me.List1.ListCount + 1, 3) &" " &Me.Text1.Text

'如果要插入在数据中则使用以下代码,但需要再建立一个text来写插入的序号,即将Tmp替换成新text的值

'Dim Tmp As Integer

'Tmp = 10

'Tmp-1是将序号10变成列表里的第9行,因为list是从0开始的.

'Me.List1.AddItem Right("00" &Tmp, 3) &" " &Me.Text1.Text, Tmp - 1

'For i = Tmp To Me.List1.ListCount - 1

'DoEvents

'Me.List1.List(i) = Right("00" &i + 1, 3) &" " &Right(Me.List1.List(i), Len(Me.List1.List(i)) - InStr(Me.List1.List(i), " ") - 2)

'Next

'将最后一列数据变更为最大的数字

'Me.List1.List(Me.List1.ListCount - 1) = Right("00" &Me.List1.ListCount, 3) &" " &Right(Me.List1.List(Me.List1.ListCount - 1), Len(Me.List1.List(Me.List1.ListCount - 1)) - InStr(Me.List1.List(Me.List1.ListCount - 1), " ") - 2)

End Sub

Private Sub Command2_Click()

On Error Resume Next

'修改信息

Me.List1.List(Me.Text1.Tag) = Right("00" &Me.Text1.Tag + 1, 3) &" " &Me.Text1.Text

End Sub

Private Sub Command3_Click()

On Error Resume Next

'删除信息

For i = CInt(Me.Text1.Tag) To Me.List1.ListCount - 1

DoEvents

Me.List1.List(i) = Right("00" &i + 1, 3) &" " &Right(Me.List1.List(i + 1), Len(Me.List1.List(i + 1)) - InStr(Me.List1.List(i + 1), " ") - 2)

Next

'删除最后一条数据

Me.List1.RemoveItem (Me.List1.ListCount - 1)

'由于是用list做序号,所以无法再使用RemoveItem方法

'Me.List1.RemoveItem (Me.Text1.Tag)

End Sub

Private Sub Form_Load()

'这个地方如果是1000,就要将 Right("00" &i, 3) 修改成 Right("000" &i, 4)

'最大数是多少就要修改下

For i = 1 To 100

Me.List1.AddItem Right("00" &i, 3) &" XXX" &i

Next

Me.Command1.Caption = "添加"

Me.Command2.Caption = "修改"

Me.Command3.Caption = "删除"

End Sub

Private Sub List1_Click()

'将列表里的信息去掉序号后显示在文本中

Me.Text1.Text = Right(Me.List1.Text, Len(Me.List1.Text) - InStr(Me.List1.Text, " ") - 2)

'将序列号保存在Text的Tag属性中

Me.Text1.Tag = Me.List1.ListIndex

End Sub


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11954070.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存