⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 030105.htm

📁 提供一个VB学习教程,入门级。来源于网上
💻 HTM
📖 第 1 页 / 共 3 页
字号:
      "c:\windows\desktop\db1.mdb"<BR>CreateWorkspace方法:建立一个新的workspace对象。格式:<BR>Set 
      workspace对象变量=DBEngine.CreateWorkspace(name,user,password,type)<BR>参数说明:name指定该工作区workspace对象的名称,user设置该工作区的用户名,password是使用者的密码,type指定类型,有Jet型(dbUseJet)和ODBC型(dbUseODBC).<BR>-----<BR>工作区WorkSpace对象:在DBEngine对象中有一个workspace对象的集合,引用一个workspace对象:DBEngine.WorkSpaces(下标或对象名),如DBEngine.Workspaces(0),下标从0开始,或DBEngine.WorkSpaces("lxn").lxn为一个workspace对象的名字。<BR>workspace对象的属性:Name属性:工作区对象的名称。Type属性:该workspace对象的类型。UserName属性:使用者的名称。<BR>workspace对象的方法:事务处理方法:所谓事务,就是对数据库的一系列的操作,如修改等等。<BR>(1),BeginTrans方法:开始一个事务.<BR>(2),CommitTrans方法:提交事务(即对数据库的操作成功,数据库内容更改) 
      (3),RollBack方法:滚回事务(即事务中的所有操作取消)。<BR>首先开始1个事务,事务的内容保存在硬盘缓冲区中,只有当用户使用了提交事务的命令后,才将缓冲区中对数据库的修改永久地写入数据库,如果使用了事务滚回命令,那么缓冲区中对数据库的操作将被清除,数据库不会被修改。 
      CreateDatabase方法:创建一个空数据库。格式:<BR>set 
      数据库对象变量=Workspace对象.CreateDatabase(新数据库名,国别,选项)<BR>其中国别和选项参数同compactdatabase方法的一样。<BR>OpenDatabase方法:打开一个已有数据库,格式:<BR>Set.database对象变量=Workspace对象.OpenDatabase<BR>(databasename,options,read_only,connect)<BR>其中有几个参数:databasename是1个有效的JET数据库文件或ODBC数据源名(DSN),options参数:对JET数据库文件--true为独占方式,false为共享方式;而对ODBC数据源--建立连接的方式,即是否提示用户和何时提示用户。read_only为是否以只读方式打开数据库,connect参数:连接方式和密码,可用来设置要打开外部数据库的类型。<BR>close方法:关闭1个workspace对象。格式:workspace对象.Close<BR>------<BR>数据库Database对象:在1个workspace对象中包含一个database对象集合,1个database对象代表了1个打开的数据库,每1个database对象又包含了五个对象集,即表TableDef对象集合,查询QueryDef对象集合,容器Container对象集合,记录集Recordset对象集合和关系Relation对象集合,<BR>database对象属性:name属性:标识1个数据库对象。<BR>Updatable属性:该数据库对象内容是否可以更改(true时可以,false为只读)<BR>RecordAffected属性:返回在数据库对象中删除,插入,更改的记录个数。<BR>Transactionds属性:是否允许使用事务处理方法。<BR>方法:<BR>CreateQueryDef方法:创建1个新的查询对象,格式:<BR>set 
      对象变量=database对象.CreateQueryDef(查询对象名,SQL命令)<BR>CreateTableDef方法:创建1个TableDef对象<BR>OpenRecordset方法:创建1个新的recordset对象,格式:<BR>set 
      对象变量=database对象.OpenRecordset(数据源,类型,选项,开放权限)<BR>其中,数据源可是1个表,也可是1条SQL语句,类型就是记录集的五种类型(table,<BR>dynaset,snapshot等)之一,选项是对记录集对象的一些特色设置,如只能添加或禁止其他用户读写等。<BR>CreateRelation方法:创建新的关系对象。<BR>Execute方法:执行1个动作查询。<BR>close方法:关闭数据库database对象.<BR>-------<BR>表TableDef对象:表的结构。1个数据库database对象中包含了1个TableDef对象集合,有多个tabledef对象,属性:<BR>LastUpdatabled属性:表最后1次修改的日期。<BR>DataCreated属性:该对象对应表的创建日期。<BR>SourceTableName属性:链接表或基表的名称。<BR>Updatable属性:该对象是否可以更新。<BR>recordcount属性:返回表中记录的个数。<BR>Attributes属性:返回对应的表的状态。<BR>ValidationRule属性:设置有效性规则。以进行有效性检查。<BR>ValidationText属性:当表的内容不符合有效性规则时,显示的警告信息。<BR>方法:<BR>CreateField方法:创建1个字段field对象。格式:<BR>Set 
      字段对象变量=tabledef对象.CreateField(字段名,数据类型,大小)<BR>OpenRecordset方法:打开对应的表记录集。格式:<BR>Set 
      记录集对象变量=tabledef对象.OpenRecordset(类型,选项,只读)<BR>其参数和上面数据库database对象的openrecordset方法的一致。<BR>-----------<BR>记录集recordset对象:在前面讲过许多属性,现补充如下:<BR>Restartble属性:是否可以使用Requery方法重新查询返回不同记录集。<BR>filter属性:指定条件,使记录集只返回符合条件的记录。相当于SQL语言中的where关健字。如:<BR>Dim 
      c as Database<BR>Dim d as Recordset<BR>Set d = c.OpenRecordset("select * 
      from BB")<BR>d.Filter = "垫付(元) &gt; 0"<BR>Set d = 
      d.OpenRecordset()&nbsp;<BR>注:对filter属性重新赋值后,要用openrecordset()方法重新打开,才能起作用。<BR>LastModified属性:返回最后一个被修改或最新添加的记录的书签。<BR>LockEdits属性:当更改数据时进行锁定,避免多个用户同时对同1记录修改而产生冲突。<BR>-----<BR>查询QueryDef对象:可在其中进行SQL查询。包含两个对象集合:Parameter对象集和Field对象集。Parameter包含所有变量对象的集合,Field包含字段对象集合。<BR>属性:SQL属性;用来使用SQL语句,格式: 
      querydef对象.SQL="SQL语句"<BR>例:<BR>Dim e As Database<BR>Dim f As 
      QueryDef<BR>Dim g As Recordset<BR>Set e = 
      DBEngine.Workspaces(0).OpenDatabase("c:\windows\desktop\lxn.mdb")<BR>Set f 
      = e.CreateQueryDef("lxnn")<BR>f.SQL = "select * from BB where 
      姓名&lt;&gt;'吴莲秀'"<BR>Set g = 
      f.OpenRecordset()<BR>Execute方法:对数据库执行1个动作查询。格式:<BR>querydef对象.Execute 
      options<BR>OpenRecordset方法:按查询对象querydef内容返回1个记录集。格式与tabledef对象的openrecordset方法一致。<BR>-----<BR>字段Field对象:在表TableDef对象中包含1个field对象集合,其中由多个field对象组成,每个field对象对应数据库表中1个字段。可通过field对象对当前记录的某字段进行修改。引用格式如:recordset对象.Fields("姓名"),或缺省为recordset("姓名")<BR>属性:name属性:字段名称。<BR>CollatingOrder属性:文本排序的规则。<BR>OrdinalPosition属性:1个字段field对象在field对象集合中的下标。<BR>size属性:字段的最大字节数。<BR>value属性:返回或设置当前记录指定字段值。是field对象的缺省属性,可省略,如:g.fields("id").value=94114,也可写为g.fields("id")=94114.<BR>sourcefield,sourcetable属性:1个字段field对象中数据来源的字段或表的名称。我们知道,记录集可能作为一个查询结果集,是建立在几个不同表上的,且字段名也可能被更改了。如果希望知道1个字段来源于哪个表的哪个字段,可用此两个属性。<BR>方法:<BR>AppendChunk方法:<BR>GetChunk方法:用于对大型字段的数据进行分段读取。格式:<BR>field对象.GetChunk 
      开始拷贝读取的位置,读取的字节数。<BR>----<BR>索引index对象:index对象是TableDef对象的index对象集合中的成员。使用索引index对象,可以在表中根据1个或多个关健字段对记录进行排序,并可加快查找速度。索引的关健字段在index对象的Fields属性中定义。属性:<BR>name属性:对象名称。<BR>Primary属性:确定1个索引是否是唯一的,即主索引,主索引必须是唯一的,且不能有null值。&nbsp;<BR>Unique属性:一个索引是否允许有相同的关健字段值的记录存在。<BR>CreateField方法:指定index对象的索引字段。格式同表对象的createfield方法一致,不过没有类型,大小参数。<BR>当一个表具有索引后,记录将按索引进行排序。<BR>========<BR>附:在数据库程序中,常常使用的是DBEngine.WorkSpaces(0),即缺省的工作区对象,也就是说,我们通常只操作工作区以下的<BR>对象群,因此,在代码中"DBEngine.WorkSpaces(0)"可省略,如:<BR>dim 
      c as database<BR>set 
      c=DBEngine.WorkSpaces(0).OpenDatabase("c:\a.mdb",false,false)<BR>可写为<BR>set 
      c=OpenDatabase("c:\a.mdb",false,false)<BR>数据库:&nbsp;<BR>注:在VB6中不能直接识别ACCESS2000格式数据库,要先将ACCESS2000库转换为以前版本,方法是在ACCESS2000的"工具"菜单"数据库实用工具"选"转换数据库""到旱期版本"。<BR>数据库程序中的Recordset(记录集)对象,它不需要另行创建,recordset代表在程序中使用的数据库部分的对象。可用来查找,排序,添加和删除记录。<BR>查找记录,如下例:<BR>Private 
      Sub mnuchazhao_Click()<BR>search$ = InputBox("请输入你要查找的姓名", "查找指定人")<BR>On 
      Error GoTo lxn:<BR>Data1.Recordset.Index = 
      "姓名"&nbsp;<BR>Data1.Recordset.Seek "=", search$<BR>If 
      Data1.Recordset.NoMatch = True Then<BR>Data1.Recordset.MoveFirst<BR>End 
      If<BR>lxn:<BR>End 
      Sub<BR>说明如下:<BR>一,index属性:要使用的数据库字段;<BR>二,seek方法:查找记录,可用=,&lt;,&gt;等关系运算符比较字符串。<BR>三,nomatch属性:值为true时表示未查找到匹配项;<BR>四,movefirst方法:移动到第一条记录。<BR>还有一种原始但实用的方法,就是用循环语句逐条检索,如下:<BR>Private 
      Sub mnuchazhao_Click()<BR>search$ = InputBox("请输入你要查找的姓名", "查找指定人")<BR>On 
      Error GoTo lxn:<BR>Do While Text1.Text &lt;&gt; 
      search$<BR>Data1.Recordset.MoveNext 移到下一条记录<BR>Loop<BR>lxn:<BR>End 
      Sub<BR>怎么样,简洁易懂。<BR>向数据库中添加记录:<BR>一,将DATA1对象的readonly属性设为false。<BR>二,用addnew方法向库中添加新记录;只要用了data1.recordset.addnew,就会立刻创建出一条新的空白记录等你填。例下:<BR>Private 
      Sub Command1_Click()<BR>rp = MsgBox("你要添加记录吗?", vbOKCancel, "添加记录")<BR>If 
      rp = vbOK Then&nbsp;<BR>Text1.SetFocus 等一下空记录诞生要从第一个文本框开始填入,先激活。 
      Data1.Recordset.AddNew<BR>End If<BR>End 
      Sub<BR>添加的记录自动存入档案,上例有一个通用方法setfocus,功能:立刻激活某个对象并赋予其焦点。&nbsp;<BR>删除记录:1。把要删除的记录成为当前记录;<BR>2。用recordset对象的delete方法删除一条记录:Data1.recordset.delete<BR>3.用mnvenext方法移动当前记录到下一条,防止"空页"现象。例:<BR>Data1.recordset.movenext<BR>举一个例如下:<BR>Private 
      Sub Command2_Click()<BR>rp = MsgBox("你真的要删除当前记录吗?", vbOKCancel, 
      "删除记录")<BR>If rp = vbOK 
      Then<BR>Data1.Recordset.Delete<BR>Data1.Recordset.MoveNext<BR>End 
      If<BR>End Sub<BR>数据库的备份: filecopy 
      源路径及文件名,目标路径及文件名<BR>注:源文件正打开时不能进行备份。一般用在本程序FORM LOAD事件,如下例:<BR>rp = 
      InputBox("请输入一个正确的路径名" &amp; Chr(13) + Chr(10) _<BR>&amp; 
      "(如:d:\vb6\lxn.dmb)", "数据库备份")<BR>If rp &lt;&gt; "" Then<BR>FileCopy 
      Data1.DatabaseName, rp<BR>End 
      If&nbsp;<BR>只在程序开始时备份总觉得拘束,可否在窗体中用一个菜单或按纽随时备份呢,我是采用关掉程序(这样来关数据库)再启动的办法,并创建一个能"跨程序"传递信息的文本文件(例中的lxn12f.txt):<BR>Private 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -