VB创建数据库表
我现在正在为我的学校编写一个学生管理系统。现在要实现的功能是这样的,在班级列表中添加好一个班级后,点击一个按钮自动创建一个表明为这个班级名字(班级名字用变量进行的引用)的...
我现在正在为我的学校编写一个学生管理系统。现在要实现的功能是这样的,在班级列表中添加好一个班级后,点击一个按钮自动创建一个表明为这个班级名字(班级名字用变量进行的引用)的数据库表(数据库名也是用变量引用的)请问要实现这样功能应该如何在按钮的单击事件中编写代码。跪求详细代码和解释。方便的话请留下QQ,我的QQ是23030411
来源: http://www.programbbs.com/bbs/view21-17294-1.htm 展开
来源: http://www.programbbs.com/bbs/view21-17294-1.htm 展开
5个回答
展开全部
一、 创建数据库:
在DAO中用CreatDataBase方法可以根据用户需求动态的创建数据库。这一点在程序中是非常有用的。用户可以根据要求实时建立数据库。建立过程如下:
Private Sub Com_creat_Click()
On Error GoTo Err100
CreatDataBase "数据库名称.mdb" ,dbLangGeneral
Msgbox "数据库建立完毕"
Exit Sub
Err100:
MsgBox "不能建立数据库! " & vbCrLf & vbCrLf & Err.Description, vbInformation
End Sub
这样,数据库便在当前默认的路径下建立了。
二、 创建表与字段:
建立数据库后,则需要在该数据库中建立表,这要用到TableDef 对象。先定义一个TableDef类型的对象,然后用TableDef集合中Append方法将之追加到数据库当中去。并且同时定义一个Field对象,用CreatFiele的方法创建一个Field对象,向表中添加字段。例如:
Private Sub Com_table_Click()
On Error GoTo Err100
Dim Defdb As DataBase
Dim NewTable As TableDef
Dim NewField As Field
Set Defdb = Workspaces(0).OpenDatabase (App.path & "\数据库名称.mdb" ,0, False)
Set NewTable = DefDataBase.CreateTableDef("表名")
Set NewField = DefTable.CreateField( "字段名" , dbText ,6) ′创建一个字符型的字段,长度为6个字符
DefTableFields.Append NewField ′字段追加
DefDatabase.TableDefs.Append NewTable ′表追加
Msgbox " 表建立完毕 "
Exit Sub
Err100:
MsgBox "对不起,不能建立表。请先再建表前建立数据库?", vbCritical
End Sub
在DAO中用CreatDataBase方法可以根据用户需求动态的创建数据库。这一点在程序中是非常有用的。用户可以根据要求实时建立数据库。建立过程如下:
Private Sub Com_creat_Click()
On Error GoTo Err100
CreatDataBase "数据库名称.mdb" ,dbLangGeneral
Msgbox "数据库建立完毕"
Exit Sub
Err100:
MsgBox "不能建立数据库! " & vbCrLf & vbCrLf & Err.Description, vbInformation
End Sub
这样,数据库便在当前默认的路径下建立了。
二、 创建表与字段:
建立数据库后,则需要在该数据库中建立表,这要用到TableDef 对象。先定义一个TableDef类型的对象,然后用TableDef集合中Append方法将之追加到数据库当中去。并且同时定义一个Field对象,用CreatFiele的方法创建一个Field对象,向表中添加字段。例如:
Private Sub Com_table_Click()
On Error GoTo Err100
Dim Defdb As DataBase
Dim NewTable As TableDef
Dim NewField As Field
Set Defdb = Workspaces(0).OpenDatabase (App.path & "\数据库名称.mdb" ,0, False)
Set NewTable = DefDataBase.CreateTableDef("表名")
Set NewField = DefTable.CreateField( "字段名" , dbText ,6) ′创建一个字符型的字段,长度为6个字符
DefTableFields.Append NewField ′字段追加
DefDatabase.TableDefs.Append NewTable ′表追加
Msgbox " 表建立完毕 "
Exit Sub
Err100:
MsgBox "对不起,不能建立表。请先再建表前建立数据库?", vbCritical
End Sub
参考资料: http://www.yesky.com/7/1726507.shtml
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
展开全部
代码很简单,一看就能明白!
'引用对象库 Microsoft ActiveX Data Objects 2.5 Library
Private Sub Form_Load()
Dim myDB As DAO.Database
Set myDB = DAO.Workspaces(0).CreateDatabase("mydb.mdb", dbLangGeneral)
Dim str_SQL As String
str_SQL = "Create Table NewTable1(Field1 Text(10),Field2 Short)"
myDB.Execute str_SQL
str_SQL = "Create Table NewTable2(Field1 Text(10),Field2 Short)"
myDB.Execute str_SQL
myDB.Close
End Sub
'引用对象库 Microsoft ActiveX Data Objects 2.5 Library
Private Sub Form_Load()
Dim myDB As DAO.Database
Set myDB = DAO.Workspaces(0).CreateDatabase("mydb.mdb", dbLangGeneral)
Dim str_SQL As String
str_SQL = "Create Table NewTable1(Field1 Text(10),Field2 Short)"
myDB.Execute str_SQL
str_SQL = "Create Table NewTable2(Field1 Text(10),Field2 Short)"
myDB.Execute str_SQL
myDB.Close
End Sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
引用:microsoft
dao
3.6
object
library
创建数据库:
set
f
=
dbengine.createdatabase(app.path
+
"\db.mdb",
dblangchinesesimplified)'(仅适用于access)
创建表要用到sql语句,如果你有这方面的基础就会很容易做到的。
首先,连接到数据库:
set
db
=
opendatabase(app.path
+
"\db.mdb")
然后执行创建表的sql语句:
db.execute
sqlstring'sqlstring是创建表的sql语句
如果你没有sql创建表的语句基础,建议先学一学,很简单的。
create
table
……
如果要q,用百度hi给我留言
dao
3.6
object
library
创建数据库:
set
f
=
dbengine.createdatabase(app.path
+
"\db.mdb",
dblangchinesesimplified)'(仅适用于access)
创建表要用到sql语句,如果你有这方面的基础就会很容易做到的。
首先,连接到数据库:
set
db
=
opendatabase(app.path
+
"\db.mdb")
然后执行创建表的sql语句:
db.execute
sqlstring'sqlstring是创建表的sql语句
如果你没有sql创建表的语句基础,建议先学一学,很简单的。
create
table
……
如果要q,用百度hi给我留言
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1楼的,这叫朝三暮四。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我不是回答过你这个问题的答案了吗? 采纳我的答案!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |