vb.net怎么动态创建access数据库和表【vb.net建立新数据库 vb向数据库中添加数据】追问: 只有那个办法? 回答: 是vb.net建立新数据库 , 这跟SQL Server不同,ACCESS是独立文件vb.net建立新数据库的,而且它能支持的SQL语句有限,一般是使用ACCESS来创建,若要动态创建 , 只能用ADO了 , 但Sql Server就不同了,它可以执行复杂的SQL语句,相对来说 , 动态创建数据库和表,要比ACCESS方便 。追问: 创建表的话能用SQL语句了吗? 回答: 没试过,应该不行 追问: 那你能告诉我下怎么创建表吗?创建数据库我会了 回答: 可以使用DAO对象来操作,注意是DAO对象 , 不是ADO对象vb.net建立新数据库! 追问: 能不能详细说下过程呢?创建表的过程 回答: 创建表的过程用DAO.net和ADO.net都可以,创建数据库可以用DAO对象,既然你已经可以创建数据库,那么创建表只要先连接到这个数据库,然后用create table语句来执行就行了 , 可以使用OledbConnection先连接这个库,接着用OledbCommand对象的ExecuteNonQuery来执行create table语句即可 。
VB.net连接数据库创建新字段并对其进行赋值首先打开数据源 , 然后使用alter table语句即可,具体范例如下:
Set cn = New ADODB.ConnectionSet rs = New ADODB.Recordsetconstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ="数据库路径及文件名""cn.Open constrDim str As Stringstr = "alter table 表名 add 字段 类型"rs.Open str, cn, adOpenStaticmsgbox"添加字段成功",vbokonly
vb.net数据库操作参考一下下面这段代码就可以了 。
ImportsSystem.Data
'引入数据库操作类命名空间
ImportsSystem.Data.OleDb
'引入ADO.NET操作命名空间
PublicClassFrmModifystInfo
InheritsSystem.Windows.Forms.Form
PublicADOcmdAsOleDbDataAdapter
PublicdsAsDataSet=NewDataSet()
'建立DataSet对象
PublicmytableAsData.DataTable
'建立表单对象
PublicmyrowAsData.DataRow
'建立数据行对象
PublicrownumberAsInteger
'定义一个整型变量来存放当前行数
PublicSearchSQLAsString
PubliccmdAsOleDbCommandBuilder
'======================================================
#Region"Windows窗体设计器生成的代码"
#EndRegion
'======================================================
PrivateSubFrmModifystInfo_Load(ByValsenderAsObject,ByValeAsSystem.EventArgs)HandlesMyBase.Load
'窗体的载入
TxtSID.Enabled=False
TxtName.Enabled=False
ComboSex.Enabled=False
TxtBornDate.Enabled=False
TxtClassno.Enabled=False
TxtRuDate.Enabled=False
TxtTel.Enabled=False
TxtAddress.Enabled=False
TxtComment.Enabled=False'设置信息为只读
DimtablenameAsString="student_Info "
SearchSQL="select*fromstudent_Info"
ExecuteSQL(SearchSQL,tablename)'打开数据库
ShowData()'显示记录
EndSub
PrivateSubShowData()
'在窗口中的textbox中显示数据
myrow=mytable.Rows.Item(rownumber)
TxtSID.Text=myrow.Item(0).ToString
TxtName.Text=myrow.Item(1).ToString
ComboSex.Text=myrow.Item(2).ToString
TxtBornDate.Text=Format(myrow.Item(3),"yyyy-MM-dd ")
TxtClassno.Text=myrow.Item(4).ToString
TxtTel.Text=myrow.Item(5).ToString
TxtRuDate.Text=Format(CDate(myrow.Item(6)),"yyyy-MM-dd ")
TxtAddress.Text=myrow.Item(7).ToString
TxtComment.Text=myrow.Item(8).ToString
EndSub
PrivateSubBtFirst_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesBtFirst.Click
'指向第一条数据
rownumber=0
ShowData()
EndSub
PrivateSubBtPrev_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesBtPrev.Click
'指向上一条数据
BtNext.Enabled=True
rownumber=rownumber-1
Ifrownumber0Then
rownumber=0'如果到达记录的首部,行号设为零
BtPrev.Enabled=False
EndIf
ShowData()
EndSub
PrivateSubBtNext_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesBtNext.Click
'指向上一条数据
BtPrev.Enabled=True
rownumber=rownumber1
Ifrownumbermytable.Rows.Count-1Then
rownumber=mytable.Rows.Count-1'判断是否到达最后一条数据
BtNext.Enabled=False
EndIf
ShowData()
EndSub
PrivateSubBtLast_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesBtLast.Click
'指向最后一条数据
rownumber=mytable.Rows.Count-1
ShowData()
EndSub
PrivateSubBtDelete_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesBtDelete.Click
mytable.Rows.Item(rownumber).Delete()'删除记录
IfMsgBox( "确定要删除改记录吗? ",MsgBoxStyle.OKCancelvbExclamation,"警告 ")=MsgBoxResult.OKThen
cmd=NewOleDbCommandBuilder(ADOcmd)
'使用自动生成的SQL语句
ADOcmd.Update(ds,"student_Info ")
BtNext.PerformClick()
EndIf
EndSub
PrivateSubBtModify_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesBtModify.Click
TxtSID.Enabled=False'关键字段只读
TxtName.Enabled=True'可读写
ComboSex.Enabled=True
TxtBornDate.Enabled=True
TxtClassno.Enabled=True
TxtRuDate.Enabled=True
TxtTel.Enabled=True
TxtAddress.Enabled=True
TxtComment.Enabled=True
EndSub
PrivateSubBtUpdate_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesBtUpdate.Click
IfNotTesttxt(TxtName.Text)Then
MsgBox( "请输入姓名! ",vbOKOnlyvbExclamation,"警告 ")
TxtName.Focus()
ExitSub
EndIf
IfNotTesttxt(ComboSex.Text)Then
MsgBox( "请选择性别! ",vbOKOnlyvbExclamation,"警告 ")
ComboSex.Focus()
ExitSub
EndIf
IfNotTesttxt(TxtClassno.Text)Then
MsgBox( "请选择班号! ",vbOKOnlyvbExclamation,"警告 ")
TxtClassno.Focus()
ExitSub
EndIf
IfNotTesttxt(TxtTel.Text)Then
MsgBox( "请输入联系电话! ",vbOKOnlyvbExclamation,"警告 ")
TxtTel.Focus()
ExitSub
EndIf
IfNotTesttxt(TxtAddress.Text)Then
MsgBox( "请输入家庭住址! ",vbOKOnlyvbExclamation,"警告 ")
TxtAddress.Focus()
ExitSub
EndIf
IfNotIsNumeric(Trim(TxtSID.Text))Then
MsgBox( "请输入数字学号! ",vbOKOnlyvbExclamation,"警告 ")
ExitSub
TxtSID.Focus()
EndIf
IfNotIsDate(TxtBornDate.Text)Then
MsgBox( "出生时间应输入日期格式(yyyy-mm-dd)! ",vbOKOnlyvbExclamation,"警告 ")
ExitSub
TxtBornDate.Focus()
EndIf
IfNotIsDate(TxtRuDate.Text)Then
MsgBox( "入校时间应输入日期格式(yyyy-mm-dd)! ",vbOKOnlyvbExclamation,"警告 ")
TxtRuDate.Focus()
ExitSub
EndIf
myrow.Item(0)=Trim(TxtSID.Text)
myrow.Item(1)=Trim(TxtName.Text)
myrow.Item(2)=Trim(ComboSex.Text)
myrow.Item(3)=Trim(TxtBornDate.Text)
myrow.Item(4)=Trim(TxtClassno.Text)
myrow.Item(5)=Trim(TxtTel.Text)
myrow.Item(6)=Trim(TxtRuDate.Text)
myrow.Item(7)=Trim(TxtAddress.Text)
myrow.Item(8)=Trim(TxtComment.Text)
mytable.GetChanges()
cmd=NewOleDbCommandBuilder(ADOcmd)
'使用自动生成的SQL语句
ADOcmd.Update(ds,"student_Info ")
'对数据库进行更新
MsgBox( "修改学籍信息成功! ",vbOKOnlyvbExclamation,"警告 ")
TxtName.Enabled=False
ComboSex.Enabled=False
TxtBornDate.Enabled=False
TxtClassno.Enabled=False
TxtRuDate.Enabled=False
TxtTel.Enabled=False
TxtAddress.Enabled=False
TxtComment.Enabled=False'重新设置信息为只读
EndSub
PrivateSubBtCancel_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesBtCancel.Click
TxtSID.Enabled=False
TxtName.Enabled=False
ComboSex.Enabled=False
TxtBornDate.Enabled=False
TxtClassno.Enabled=False
TxtRuDate.Enabled=False
TxtTel.Enabled=False
TxtAddress.Enabled=False
TxtComment.Enabled=False
EndSub
PublicFunctionExecuteSQL(ByValSQLAsString,ByValtableAsString)
Try
'建立ADODataSetCommand对象
'数据库查询函数
ADOcmd=NewOleDbDataAdapter(SQL,"Provider=Microsoft.Jet.OLEDB.4.0;DataSource=c:\student.mdb ")
'建立ADODataSetCommand对象
ADOcmd.Fill(ds,table)'取得表单
mytable=ds.Tables.Item(0)'取得名为table的表
rownumber=0'设置为第一行
myrow=mytable.Rows.Item(rownumber)
'取得第一行数据
Catch
MsgBox(Err.Description)
EndTry
EndFunction
EndClass
vb.net 写数据库你这是向sql后台数据库写数据吗?
sqldataadapter1.update 改须指定有效vb.net建立新数据库的updatecommand,vb.net建立新数据库我一直没有看到
给你个例子你看吧:
'首先指定有效vb.net建立新数据库的UpdateCommand
sqlstr = "insert into Playlist(PlayName,PlayPath)values('"TextBox4.Text.Trim"','"TextBox5.Text.Trim"')"
Module1.Mycommand.CommandText = sqlstr
'增加新一行(此行必须,要不不能与后台同步,并且后面调用update会出错)
Module1.MyDataSet.Tables("Music").Rows.Add()
Module1.MyDataAdaPter.InsertCommand = Module1.Mycommand
Module1.MyDataAdaPter.Update(Module1.MyDataSet, "Music")
MsgBox("增加数据成功vb.net建立新数据库!vb.net建立新数据库!")
VB.NET通过调用模块怎么建立access数据库?oledb的使用网上的确很多.
如果只是查询. 写入. 删除,我们常用的就是
OleDbConnection'用于写数据库的连接
OleDbCommand '用于数据的操作 接收SQL语句 并执行
OleDbDataReader'查询了,我们就用这个类来读取查询的对象
1).OleDbConnection
dim conn as new OleDbConnection("Provider = Microsoft.Jet.OLEDB.4.0;Data Source =数据库的路径")'连接字符串一般就这样
查询前在打开
conn.open
2).OleDbCommand
dimcmd as new OleDbCommand ("SQL语句",conn)'SQL语句决定了你是查询写入还是更新删除
'''
如果是查询,你还要用到OleDbDataReader
这个是不用新建的不能用New
dim rd as OleDbDataReader=cmd.ExecuteReader'cmd.ExecuteReader 方法就是读取查询的内容
cmd.ExecuteNonQuery用于执行操作 返回变动的条数 ,一般用于 添加 删除 更新 等其它操作
其实就这些了,就是要学点SQL语句就行了.
标准执行过程就是
Dim conn As New OleDbConnection("连接字符串")
conn.Open()
Dim cmd As New OleDbCommand("SQL语句", conn)
'如果是写入 更新 删除则
cmd.ExecuteNonQuery()
' 否则
Dim rd As OleDbDataReader = cmd.ExecuteReader
If rd.Read Then
Dim d As Object = rd.Item("字段名")
End If
' 结束如果
rd.Close()
cmd.Dispose()
conn.Close()
上面要有 Imports System.Data.OleDb
关于vb.net建立新数据库和vb向数据库中添加数据的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
推荐阅读
- 密室逃脱中的益智游戏,密室逃脱中的益智游戏是什么
- 夜间怎么阻止手机耗电,夜间怎么阻止手机耗电量
- 手机贴膜摆摊怎么买手机膜,手机贴膜在哪儿摆摊好
- 台式电脑怎样直播视频游戏,台式电脑怎么直播游戏
- 数据库异步php 数据库异步处理
- 设计店如何选址引流,开店选址模型
- 怎么买40系显卡,怎么买40系显卡最划算
- oracle数据库的培训,oracle数据库培训课程
- vb.net抓包 vba抓包