1. 如何用VB建立数据库
但即便如此,数据库应用程序的开发仍然算得上是VB编程中的难点,这是因为你不仅要熟悉VB中关于数据库编程方面的知识(当然这是十分简单的)还要了解数据库的知识。所以我们先介绍一下数据库的基本知识,算是学习数据库编程前的热身运动吧! 一、热身运动 首先需要声明是,我们这里介绍的数据库知识都是指的关系数据库。所谓关系数据库就是将数据表示为表的集合,通过建立简单表之间的关系来定义结构的一种数据库。 不管表在数据库文件中的物理存储方式如何,它都可以看作一组行和列,与电子表格的行和列类似。在关系数据库中,行被称为记录,而列则被称为字段。下面是一个客户表的例子。 表1 客户表 客户号 姓名 地址 城市 街道 邮编 1723 Doe John 1234 Ffth Avenue New York NY 1004 3391 Smith Mary 9876 Myrtle Lavee Bosten MA 6078 3765 Blasel Mortimer 2296j River Road peoria IL 7011 此表中每一行是一个记录,它包含了特定客户的所有信息,而每个记录则包含了相同类型和数量的字段:客户号、姓名等等。 表 是一种按行与列排列的相关信息的逻辑组,类似于工作单表。 字段 数据库表中的每一列称作一个字段。表是由其包含的各种字段定义的,每个字段描述了它所含有的数据。创建一个数据库时,须为每个字段分配一个数据类型、最大长度和其它属性。字段可包含各种字符、数字甚至图形。 记录 各个客户有关的信息存放在表的行,被称为记录。一般来说,数据库表创建时任意两个记录都不能相同。 键 键就是表中的某个字段(或多个字段),它(们)为快速检索而被索引。键可以是唯一的,也可以是非唯一的,取决于它(们)是否允许重复。唯一键可以指定为主键,用来唯一标识表的每行。例如,在前面的例子中,客户标识号 (客户号) 是表的主键,因为客户号唯一地标识了一个客户。 关系 数据库可以由多个表组成,表与表之间可以以不同的方式相互关联。例如,客户数据库还可以有一个包含某个客户的所有定单的表。它只用“客户号”字段来引用该定单的客户,而不在定单表中的每项重复所有客户信息,如下表所示: 表2 定货表 定货 客户号 日期 内容 数量 14764 3391 2/23/94 27 $22.95 14932 3391 3/17/94 46 $9.57 15108 8765 2/15/96 27 $22.95 在这个表中,客户号字段引用了客户表中的 客户号字段,从而把定单和客户联系起来了。可以看到,客户 3391 (Mary Smith) 在 94 年 2 月 23 日订购了 27 项,在 94 年 3 月 17 日订购了 46 项。用来建立关系的键叫做外部键,因为它与“外部”表(客户表)的主键关联。 一对多和多对多关系 上表中的关系类型叫做一对多关系,因为一个客户可以发出多个定单,而某个特定的定单只能是一个客户所发。也可以建立多对多的关系。例如,列出所有可以销售的项(存货)的盘存表: 表3 盘存表 内容 描述 供应商 费用 盘存 27 Straw Hat Garden Supply Co. $14.00 50 46 Garden gloves Garden Supply Co. $4.50 75 102 hanging floral instries $6.00 137 从盘存表中,可以看到在客户和存货项之间存在多对多的关系。也就是说,一个客户可以订购多个存货项,而一个存货项又能够被多个客户订购。多对多关系是通过两个独立的一对多关系来定义的,公共的“多”表包含了两个其它表的外部键。在该例中,定货s 表与 盘存 表(通过 “内容”)与 Customer 表(通过 客户号)都相关联。
2. 如何用vb创建数据库 求高手
1.在界面上点接外接程序
2.可视化数据管理器
3.新打开的界面点文件
4.新建
5.选MICSOFT ACCESS
6.选择一个MDB按自己要求进行表的设置
3. 如何用vb动态创建数据库的表
For i = 2 To 6
tbl.Columns.Append "MyField"虚丛 & i, adInteger '表的第i个字段滚誉差
Next i
可以大皮使用循环语句创建表
4. vb中应用数据库需要手动建立数据库吗还是vb程序里会自动建一个
需要手工建立数据库轮核,各种数据库应用需求不用,开发掘桐团工具不会提供一个通判橘用模板的。
当然创建数据库的代码是可以写在vb中,当程序运行的时候创建。
5. 如何用vb建立一个access数据库
vb只是一个编程语言,并不能建立数据库,建立access数据库要完全在access中进行。
前提条件专:必须安装微软属access数据库。
步骤:
1、找好要存放数据库的路径,如C盘data路径;
2、路径下空白处点右键,新建-Microsoft Access数据库,如图:
3、这时路径下就有了一个access文件,可以右键-重命名来为数据库起名,如,起名叫测试数据库;
4、双击access文件,在里边创建所要的表,函数等等即可。
6. 如何用VB建立数据库
VB6集成调试环境左边工具箱内已加载了有关数据库编程必须的控件。专
然后在FORM1窗体中添加ADODC控件和DATAGRID控件,属将DATAGRID1的属性DATASOURCE选ADODC1。
打开ADODC1控件属性页使用连接字符串,选生成。在提供者选项中选MICROSOFT jet 4.0 OLE DB Provider,然后按要求连接数据库等。在ADODC1控件属性页使用连接字符串空白文本窗口中就有一长串字符串,注意该字符串可复制到程序代码用于编程。ADODC1控件属性页的数据源内有命令文本(SQL)编写窗口可编写SQL查询语言。该窗口的SQL语句可复制到程序代码用于编程。
7. VB创建数据库表
一、 创建数据库:
在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
8. 通过vb生成数据库
先在菜单“工程”-->“引用”两个东东:
“Microsoft ActiveX Data Objects 2.7 Library”
“Microsoft ADO Ext.2.7 for DDL ado Security”
Private Sub Command1_Click()
Dim mDataBaseName As String
Dim mCnnStr As String
Dim cCnn As New ADODB.Connection
Dim cat As New ADOX.Catalog
Dim mTable As New ADOX.Table
Dim mCol As New ADOX.Column
mDataBaseName = App.Path & "\我的数据库.mdb"
If Dir(mDataBaseName) <> "" Then
Kill mDataBaseName '删除已有的数据库文件
End If
mCnnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & mDataBaseName & ";Jet OLEDB:DataBase Password="
Call cat.Create(mCnnStr) '创建新的数据库
mTable.Name = "职员资料"
Set mCol.ParentCatalog = cat
With mTable
'创建字段
.Columns.Append "编号", adInteger
.Columns.Append "姓名", adVarWChar, 50
.Columns.Append "职位", adVarWChar, 50
.Columns.Append "电话", adVarWChar, 50
.Columns.Append "地址", adVarWChar, 50
.Columns.Append "是否在职", adBoolean, 0
'设置主键
.Keys.Append "PrimaryKey", ADOX.KeyTypeEnum.adKeyPrimary, "编号", "", ""
End With
cat.Tables.Append mTable
Set mCol = Nothing
Set mTable = Nothing
Set cat = Nothing
End Sub
大致是这样创建的,关于创建字段名的数据类型由于内容太长,在此不贴了,按F1(假设安装了MSDN)查询吧。呵呵。
9. 如何用VB编写可以动态生成数据库和表的程序
那只是创建表.还不算动态,动态要二维数组,表达行和列.
如: Dim myDB As DAO.Database
Set myDB = DAO.Workspaces(0).CreateDatabase("d:\md\lll.mdb", dbLangGeneral)
myDB.Execute "Create Table " & 表名 & "(" & "id Counter," & mm1 & " Text(10))"
'生成一个d:\md\lll.mdb数据库存
myDB.Close
打断它:. 表名=数组 字段= combo2数组 字段属性= combo3数组
for..i=0 to combo2.ListCount-1'主工部分处理
myDB.Execute "Create Table " & 表名 & "(" & combo2.list(i) & combo3.list(i) ")"
next
这样生成的表就是一个完全动态的表名,行 列 字段都能自己定义的动态表,
调用查询/删/增/修改.都分别以数组
如:
cn.Open "provider=Microsoft.jet.OLEDB.4.0;data source=" & ur
sq = "select * from " & uyu & " where " & stm(3) & "='" & Form2.Text1(3) & "'"
rs.Open sq, cn, adOpenKeyset, adLockOptimistic
If rs.RecordCount > 0 Then
MsgBox "" & stm(3) & "重复,不能添加数据", vbExclamation, "查询"
rs.Close
cn.Close
查询:
For i = 1 To rs.RecordCount
Set Fliv = Form1.ListView1.ListItems.Add()
Fliv.Text = rs.Fields(stm(1))
For r = 1 To sn - 1
Fliv.SubItems(r) = rs.Fields(stm(r + 1))
Next
rs.MoveNext
Next i
'sts = stm(1) & "='" & Form3.Text1(1) & "', " & stm(2) & "='" & Form3.Text1(2) & "', " & stm(4) & "='" & Form3.Text1(4)
For r = 1 To sn - 1
rn = rn + stm(r) & "='" & Form3.Text1(r) & "', "
Next
sts = rn & stm(sn) & "='" & Form3.Text1(sn)
' Form3.Text1(sn).Enabled = False
sq = "Update " & uyu & " set " & sts & "' where " & stm(3) & "='" & Form3.Text1(3) & "'"
cn.Execute (sq)
MsgBox "数据修改完成", vbInformation, "修改"
cn.Close
Set cn = Nothing
Form1.ListView1.ListItems.Clear '先清空表格里的数据
加载列表数据
设成公用变量,全换成数组之后,反面简单明了..
只用提供表名,及字段马上就可以生成你需要数据库..动态数组的交集就是所需字
记录.查询和调用都极为便利.更重要的是大大减小了数据库负担
10. VB中怎么动态创建access数据库以及数据库表
在vb中创建一个mdb文件需要用到adox,非常麻烦,还不如用access创建一个空mdb文件,需要用的时候复制版一权个,改名成123.mdb方便。至于生成表格之类的不是一个问答能说清楚的,还是买本书看看吧。