仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 648|回复: 7
打印 上一主题 下一主题

[学习教程] MYSQL网页设计从头定位链接表二步走

[复制链接]
只想知道 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:27:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
MySQL对硬件的较低要求是其最大的优势之一,不过需要注意的是:内存越多越好,因为所有的重要数据存储都在内存中完成。只管Accxp网上有良多关于定位链接表的贴子,但仍是有良多的伴侣扣问这方面的成绩。应letter网友的发起,分离Alex总版主的从头定位链接表文件源码,现将这方面的详细操纵先容以下:
假定前台数据库文件名为frontBase.mdb
背景数据库文件名为backData.mdb
frontBase傍边有链接表tbl1,tbl2,tbl3,…,链接到backData.mdb中
起首我们要在前台数据库文件的启动窗体加载事务中判别链接是不是准确
办法是翻开恣意一个链接表,假定为tbl1,代码以下:
PublicFunctionCheckLinks()AsBoolean
反省到背景数据库的链接;假如链接存在且准确的话,前往True。  
  DimdbsAsDatabase,rstAsDAO.Recordset  
  Setdbs=CurrentDb()
  翻开链接表检察表链接信息是不是准确。
  OnErrorResumeNext
  Setrst=dbs.OpenRecordset(“tbl1”)
  rst.Close
  假如没有毛病,前往True。
  IfErr=0Then
    CheckLinks=True
  Else
    CheckLinks=False
  EndIf  
EndFunction
启动窗体的加载事务:
PrivateSubFORM_Load()
IfCheckLinks=Falsethen
Docmd.OpenFORM“frmConnect”
EndIf
EndSub
frmConnect毗连窗体以下图


接上去的事变就是怎样革新链接表了。
下面的窗体右侧的按钮是用用来挪用API翻开文件对话框,详细代码以下:
DeclareFunctionGetOpenFileNameLib"comdlg32.dll"Alias"GetOpenFileNameA"(pOpenfilenameAsOPENFILENAME)AsBoolean
TypeOPENFILENAME
  lStructSizeAsLong
  hwndOwnerAsLong
  hInstanceAsLong
  lpstrFilterAsString
  lpstrCustomFilterAsString
  nMaxCustFilterAsLong
  nFilterIndexAsLong
  lpstrFileAsString
  nMaxFileAsLong
  lpstrFileTitleAsString
  nMaxFileTitleAsLong
  lpstrInitialDirAsString
  lpstrTitleAsString
  flagsAsLong
  nFileOffsetAsInteger
  nFileExtensionAsInteger
  lpstrDefExtAsString
  lCustDataAsLong
  lpfnHookAsLong
  lpTemplateNameAsString
EndType
PrivateSubFileOpen_Click()
 DimofnAsOPENFILENAME
 DimrtnAsString
 ofn.lStructSize=Len(ofn)
 ofn.hwndOwner=Me.hwnd

 ofn.lpstrFilter="数据库文件(*.mdb)"&vbNullChar&"*.mdb"
 ofn.lpstrFile=Space(254)
 ofn.nMaxFile=255
 ofn.lpstrFileTitle=Space(254)
 ofn.nMaxFileTitle=255
 ofn.lpstrInitialDir=CurrentProject.Path
 ofn.lpstrTitle="背景数据文件为"
 ofn.flags=6148
 rtn=GetOpenFileName(ofn)

 FileName.SetFocus
 Ifrtn=TrueThen
   FileName.Text=ofn.lpstrFile
   FileName.Text=FileName.Text
   OK.Enabled=True
 Else
   FileName.Text=""
 EndIf
EndSub
毗连按钮革新链接表,代码以下:
PrivateSubOK_Click()
DimtabDefAsTableDef
ForEachtabDefInCurrentDb.TableDefs
IfLen(tabDef.Connect)>0Then
tabDef.Connect=";DATABASE="&Me.FileName.Text&";PWD="+背景数据库暗码
tabDef.RefreshLink
EndIf
Next
MsgBox"毗连乐成!"
DoCmd.CloseacFORM,Me.Name
EndSub

实在很复杂只要两步,判别链接是不是准确和革新链接表。
MySQL数据库归MySQLAB公司所有,但是这个软件是开源的,有一个MySQL学习教程可以免费下载。稍俱常识的新入门者都可以轻松实现在一个常见硬件上安装和配置MySQL。
简单生活 该用户已被删除
沙发
发表于 2015-1-19 05:25:14 | 只看该作者
对于微软系列的东西除了一遍遍尝试还真没有太好的办法
谁可相欹 该用户已被删除
板凳
发表于 2015-1-24 06:57:02 | 只看该作者
sqlserver的痛苦之处在于有用文档的匮乏,很多只是表明的东西
小女巫 该用户已被删除
地板
发表于 2015-2-7 00:05:31 | 只看该作者
是否碎片会引发效率问题?这都是需要进一步探讨的东西。varbinary(max)代替image也让SQLServer的字段类型更加简洁统一。
分手快乐 该用户已被删除
5#
发表于 2015-2-19 04:14:49 | 只看该作者
你觉得我的非分区索引无法对起子分区,你可以提醒我一下呀!没有任何的提醒,直接就变成了非分区表。不知道这算不算一个bug。大家也可以试试。
若相依 该用户已被删除
6#
发表于 2015-3-6 12:45:20 | 只看该作者
原来的计算字段其实和虚拟字段很像。只是管理方面好了而已,性能方面提高不多。但是SQL2005提供了计算字段的持久化,这就提高了查询的性能,但是会加重insert和update的负担。OLTP慎用。OLAP可以大规模使用。
爱飞 该用户已被删除
7#
发表于 2015-3-13 01:08:19 | 只看该作者
无法深入到数据库系统层面去了解和探究
兰色精灵 该用户已被删除
8#
发表于 2015-3-20 08:17:23 | 只看该作者
入门没那么困难,精通没那么容易
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 13:57

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表