透明 发表于 2015-1-16 22:33:34

MYSQL网页编程之用Access轻松打印带相片的证件

DBaaS解决方案可以降低首次投入成本,对于那些小企业来说,他们往往认为内部部署的数据库成本太高,DBaaS的成本和灵活性优势对小企业吸引力更大,他们是云数据库解决方案的重点客户群体。access|打印 比来笔者接到一个义务,要将先生的证手札息及相片打印到3+1妙技证书模板上,而且还要传到网上供用人单元查询。原始数据分两部分,一部分是包括先生姓名、身份证号、认证项目、证书编号等信息的Excel表;另外一部分是按认证项目分类、以先生姓名为名的相片,图片巨细均为90×120像素,图片格局均为JPG。(点击检察更多软件利用技能)  思索到工夫上的紧急性,另有用户操纵的易用性,今后上彀查询所需数据库的兼容性,因而决意选用Access来开辟。Access具有壮大的窗体创立、报表打印、VBA编程功效,足以胜任年夜部分小型数据库使用体系的开辟。
  创立数据库和表
  1.翻开MicrosoftOfficeAccess,创立一个空数据库,与相片的分类目次放在统一个文件夹下。
  2.利用“文件→猎取内部数据→导进”功效将Excel表间接导进Access中,保留为“证手札息”表。
  创立证手札息报表
  1.创立“证手札息”报表,先拔出一个“图象”控件,设置其图片属性为证书模板图片,设置其巨细为证书模板的巨细,设置其可见性为否,如许有益于证手札息的排版,且不会打印出来;再顺次拔出要打印的字段列表,设置好字体和字号;最初再拔出一个“图象”控件,安排于打印相片的中央,设置其巨细为相片的巨细,设置其称号为“stuimg”。
  2.顺次点击菜单栏“视图→代码”命令,进进VBA代码编写窗口,编写以下代码:
  PrivateSub主体_Format(CancelAsInteger,FormatCountAsInteger)
  DimimgpathAsString
  根据使用程序路径、认证项目称号、姓名失掉相片路径
  imgpath=Application.CurrentProject.Path+""+认证项目.text+""+姓名.Text+".jpg"
  判别照片是不是存在,假如不存在则显现一张空缺的图片。
  IfDir(imgpath)=""Thenimgpath=Application.CurrentProject.Path+"
oimg.bmp"
  Stuimg.Picture=imgpath
  EndSub
  创立打印预览面板窗体
  1.创立“打印预览面板”,顺次安排一个用于查询的文本框,并定名为“inputname”;两个命令按钮“预览”、“封闭”。
  2.顺次点击菜单栏“视图→代码”命令,进进VBA代码编写窗口,编写以下代码:
  PublicstunameAsString界说全局变量stuname
  SubPrintReports(PrintModeAsInteger)
  创立打印预览子程序
  DimstrWhereCategoryAsString
  IfstunameEmptyThen
  strWhereCategory="姓名="+stuname+""
  EndIf
  DoCmd.OpenReport"证手札息",PrintMode,,strWhereCategory
  DoCmd.CloseacForm,"打印预览面板"
  EndSub
  PrivateSubinputname_Change()
  将文本框输出的字符赋给全局变量sname,用于给打印预览限制前提
  stuname=inputname.Text
  EndSub
  PrivateSub预览_Click()
  预览报表,本历程利用自界说的PrintReports子程序
  PrintReportsacPreview
  EndSub
  PrivateSub封闭_Click()
  封闭窗体
  DoCmd.Close
  EndSub
  创立主切换面板窗体
  1.创立“主切换面板”,安排三个命令按钮“打印先生证书”、“前往数据窗口”、“加入办理体系”。
  2.顺次点击菜单栏“视图→代码”命令,进进VBA代码编写窗口,编写以下代码:
  PrivateSub打印先生证书_Click()
  DimstrFormNameAsString
  strFormName="打印预览面板"
  翻开打印预览面板
  DoCmd.OpenFormstrFormName,,,,,acDialog
  EndSub
  PrivateSub封闭以后窗口_Click()
  DimstrDocNameAsString
  strDocName="证手札息"
  封闭“主切换面板”窗体。
  DoCmd.Close
  设置核心到数据库窗口;选择“证手札息”表。
  DoCmd.SelectObjectacTable,strDocName,True
  EndSub
  PrivateSub加入办理体系_Click()
  加入MicrosoftAccess.
  DoCmd.Quit
  EndSub
  设置启动时显现主切换面板
  顺次点击菜单栏“工具→启动”命令,翻开“启动”设置窗口,在“显现窗体→页”选项下选择主切换面板,并作废“显现数据库窗口”,如许鄙人一次翻开此Access数据库时,就会主动显现主切换面板窗体。读者也可依据本人的必要决意是不是作废菜单栏和快速菜单栏,假如作废今后又要显现它们,能够在翻开Access数据库时按住Shift键。
  至此,妙技证书打印体系开辟终了。本体系在Windows2000ServerSP4、MicrosoftOfficeAccess2003下调试经由过程,感乐趣的读者可到作者的网站下载(http://www.cqie.net/opus/)。
下面我将描述五个不使用MySQL的响亮理由。

海妖 发表于 2015-1-19 16:28:01

也可谈一下你是怎么优化存储过程的?

变相怪杰 发表于 2015-1-25 23:01:34

比如,MicrosoftSQLServer2008的某一个版本可以满足现在的这个业务的需要,而且价格还比Oracle11g要便宜,那么这一产品就是适合的。

admin 发表于 2015-2-4 12:56:19

需要注意的一点,也是我使用过程中发现的一个问题。在建立function->schema->table后,如果在现有的分区表上建立没有显式声明的聚集索引时,分区表会自动变为非分区表。这一点很让我纳闷。

仓酷云 发表于 2015-2-9 22:46:28

连做梦都在想页面结构是怎么样的,绝非虚言

金色的骷髅 发表于 2015-2-28 03:21:30

可能有的朋友会抱怨集成的orderby,其实如果使用ranking函数,Orderby是少不了的。如果担心Orderby会影响效率,可以为orderby的字段建立聚集索引,查询计划会忽略orderby操作(因为本来就是排序的嘛)。

莫相离 发表于 2015-3-9 20:18:53

一直以来个人感觉SQLServer的优化器要比Oracle的聪明。SQL2005的更是比2k聪明了不少。(有次作试验发现有的语句在200万级时还比50万级的相同语句要快show_text的一些提示没有找到解释。一直在奇怪。)

柔情似水 发表于 2015-3-17 01:08:57

可能有的朋友会抱怨集成的orderby,其实如果使用ranking函数,Orderby是少不了的。如果担心Orderby会影响效率,可以为orderby的字段建立聚集索引,查询计划会忽略orderby操作(因为本来就是排序的嘛)。

冷月葬花魂 发表于 2015-3-23 11:48:31

理解了存储结构,再阅读下性能优化的章节基本上会对sqlserver有个清晰地认识
页: [1]
查看完整版本: MYSQL网页编程之用Access轻松打印带相片的证件