Vb.net 在某些更改后,数据将自动删除
我创建了一个项目。我想当我运行form2表单菜单栏时,记录会自动显示Vb.net 在某些更改后,数据将自动删除,vb.net,ms-access,Vb.net,Ms Access,我创建了一个项目。我想当我运行form2表单菜单栏时,记录会自动显示 access database vb.net 2010 connecting through coding use connecting module ------------------------------------ in form load event call connection call showdata '---*I want to when I run the form2 form menu bar r
access database
vb.net 2010
connecting through coding
use connecting module
------------------------------------
in form load event
call connection
call showdata '---*I want to when I run the form2 form menu bar record will show automatically.
----------------------------------------------
call showdata coding
cnn = New OleDb.OleDbConnection
With cnn
.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\DB.accdb;Persist Security Info=False;"
.Open()
End With
Dim ds As New DataSet
Dim dt As New DataTable
ds.Tables.Add(dt)
Dim da As New OleDb.OleDbDataAdapter
da = New OleDb.OleDbDataAdapter("select * from cominfo", cnn)
da.Fill(dt)
cnn.Close()
If dt.Rows.Count = 0 Then
MsgBox("No Company Name Registerd. Please Registered The Company....", vbOKOnly)
Cominfo.Show()
Cominfo.ComnameTextBox.Focus()
Else
Cominfo.IDTextBox.Text = dt.Rows(0).Item(0)
Cominfo.ComnameTextBox.Text = dt.Rows(0).Item(1)
End If
添加数据后显示数据完美的编码
但是,当我更改其他任何东西的编码(例如,我添加了一个显示日期时间的文本框)并保存,然后运行应用程序并转到form2时,所有记录都会自动删除。然后我添加记录并停止应用程序,然后运行100次正常工作,但当我在删除/添加编码窗口的一些空白后按下保存按钮时,当我运行应用程序并打开表单2时,没有记录
我使用此代码在数据上插入数据 基本模块
Imports System.Data.OleDb
Module Modconnection
Public cnn, cn As New OleDb.OleDbConnection
Public cm As New OleDb.OleDbCommand
Public dr As OleDbDataReader
Public Sub connection()
cn = New OleDb.OleDbConnection
With cn
.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\DB.accdb;Persist Security Info=False;"
.Open()
End With
End Sub
添加数据按钮:
Call connection()
Try
cm = New OleDb.OleDbCommand
With cm
.Connection = cn
.CommandType = CommandType.Text
.CommandText = "INSERT INTO cominfo (Comname,Add1,Add2,Phone,Vat,cst_tin,Email,Website) VALUES (@Comname,@Add1,@Add2,@Phone,@Vat,@cst_tin,@Email,@Website)"
.Parameters.Add(New System.Data.OleDb.OleDbParameter("@Comname", System.Data.OleDb.OleDbType.VarChar, 255, Me.ComnameTextBox.Text))
.Parameters.Add(New System.Data.OleDb.OleDbParameter("@Add1", System.Data.OleDb.OleDbType.VarChar, 255, Me.Add1TextBox.Text))
.Parameters.Add(New System.Data.OleDb.OleDbParameter("@Add2", System.Data.OleDb.OleDbType.VarChar, 255, Me.Add2TextBox.Text))
.Parameters.Add(New System.Data.OleDb.OleDbParameter("@Phone", System.Data.OleDb.OleDbType.VarChar, 255, Me.PhoneTextBox.Text))
.Parameters.Add(New System.Data.OleDb.OleDbParameter("@Vat", System.Data.OleDb.OleDbType.VarChar, 255, Me.VatTextBox.Text))
.Parameters.Add(New System.Data.OleDb.OleDbParameter("@cst_tin", System.Data.OleDb.OleDbType.VarChar, 255, Me.Cst_tinTextBox.Text))
.Parameters.Add(New System.Data.OleDb.OleDbParameter("@Email", System.Data.OleDb.OleDbType.VarChar, 255, Me.EmailTextBox.Text))
.Parameters.Add(New System.Data.OleDb.OleDbParameter("@Website", System.Data.OleDb.OleDbType.VarChar, 255, Me.WebsiteTextBox.Text))
' RUN THE COMMAND
cm.Parameters("@Comname").Value = Me.ComnameTextBox.Text
cm.Parameters("@Add1").Value = Me.Add1TextBox.Text
cm.Parameters("@Add2").Value = Me.Add2TextBox.Text
cm.Parameters("@Phone").Value = Me.PhoneTextBox.Text
cm.Parameters("@Vat").Value = Me.VatTextBox.Text
cm.Parameters("@cst_tin").Value = Me.Cst_tinTextBox.Text
cm.Parameters("@Email").Value = Me.EmailTextBox.Text
cm.Parameters("@Website").Value = Me.WebsiteTextBox.Text
cm.ExecuteNonQuery()
MsgBox("Record saved.", MsgBoxStyle.Information)
Me.ComnameTextBox.Text = ""
Me.Add1TextBox.Text = ""
Me.Add2TextBox.Text = ""
Me.PhoneTextBox.Text = ""
Me.VatTextBox.Text = ""
Me.Cst_tinTextBox.Text = ""
Me.EmailTextBox.Text = ""
Me.WebsiteTextBox.Text = ""
Exit Sub
End With
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical)
End Try
您缺少的是您只编辑本地数据表中的数据,因此,如果您退出并返回程序,它将消失 因此,您需要做的是创建一个OleDb命令,并创建一个“Insert”语句或一个“Update”语句 编辑:展示工作代码的好视频(不是我的):
我只是将db.accdb properties copy更改为out put目录“请勿复制”我使用此代码在数据库上插入数据我使用此代码在数据库上插入数据代码太多了,因此,我将代码添加到顶部(主命令区。请检查请帮助我先生………您是否有任何错误?没有先生,没有显示错误,在保存后,当我运行应用程序数据自动删除时。我不太确定。从我看到的代码看起来很好…请花点时间了解代码格式化工具在这里是如何工作的。您不需要
-只需使用编辑器中的图标,它看起来像{}
。不清楚这个问题中的什么内容是代码,什么是注释,所以我不得不猜测。谢谢,先生您的回复。我只需将db.accdb properties copy改为out-put目录“请勿复制”,谢谢大家