嵌入式技术论文篇二 嵌入式系统应用技术 【摘 要】本文介绍了嵌入式系统的含义、发展、现状和我国在嵌入式系统中面临的机遇,重点介绍了嵌入式系统的硬件,简要说明了嵌入式操作系统。 【关键词】单片机;操作系统;Linux;嵌入式系统 1.嵌入式系统的定义与市场前景 嵌入式系统是指以应用为中心,以计算机技术为基础,软件硬件可剪裁,适应应用系统对功能、可靠性、体积、功耗严格要求的专用计算机系统。它主要由嵌入式微处理器、外围硬设备、嵌入式操作系统及应用软件等部分构成,用于实现对其他设备的控制、监视和管理等功能 。 PC机主要应用在办公室自动化领域,而嵌入式已经渗入到人们的工作、生活中,如工业控制、交通管理、信息家电、家庭智能管理系统、POS网络及电子商务、环境监测、机器人等领域 。今天嵌入式系统带来的工业年产值已超过了1万亿美元,1997年来自美国嵌入式系统大会(Embedded System Conference)的报告指出,未来5年仅基于嵌入式计算机系统的全数字电视产品,就将在美国产生一个每年1500亿美元的新市场。美国汽车大王福特公司的高级经理也曾宣称,“福特出售的‘计算能力’已超过了IBM”,由此可以想见嵌入式计算器工业的规模和广度。1998年11月在美国加州举行的嵌入式系统大会上,基于RTOS的Embedded Internet成为一个技术新热点。 美国著名未来学家尼葛洛庞帝99年1月访华时预言,4~5年后嵌入式智能(计算机)工具将是PC和因特网之后最伟大的发明 。这就是所谓的“后PC时代”概念。 2.嵌入式系统发展阶段 嵌入式系统的出现至今已经30多年的历史。近几年来,计算机(Computer)、通信(Communication)、消费电子(Consumer Electron)的一体化趋势日益明显,成就了3C融合之势.纵观其发展历程,大致经历了一下几个阶段。 第一阶段是以单芯片为核心的可编程控制器(PLC)形式的系统,具有监测、伺服、指示设备相配合的功能。这类系统大部分应用在一些专业性强的工业控制系统中,没有操作系统的支持,只通过汇编语言对其编程控制。 第二阶段是单片机(又称微控制器 MCU Microcontroller Unit)为基础,这时候的编程语言从汇编转变成以C语言为主。这一阶段的MCU种类繁多,价格较低,现在依然发挥着重要作用。 第三阶段是以嵌入式操作系统为标志的嵌入式系统。这时候的单片机速度越来越快,功能越来越多。这时候软件主要运行在嵌入式操作系统上。嵌入式操作系统能运行各种不同类型的单片机上,兼容性好;用户界面较友好,具有大量的应用程序接口API,开发应用程序简单。 第四阶段是以Internet为标志的嵌入式系统。随着Internet的发展以及Internet技术与信息家电、控制技术日益结合,嵌入式系统通过各种总线形式和Internet的结合越来越密切 。 3.嵌入式系统的核心硬件 嵌入式系统的核心硬件是单片机,又称微控制器(MCU)它是将计算机的基本部件微型化并集成到一块芯片上的微型计算机,通常片内都含有CPU、ROM、RAM、并行I/O、串行I/O、定时器/计数器、中断控制、系统时钟及系统总线等。随着技术的发展,单片机片内集成的功能越来越强大,并朝着SoC(System on chip片上系统)方向发展。单片机有着体积小、功耗低、功能强、性能价格比高、易于推广应用等显著优点,在自动化装置、智能仪器仪表、过程控制、通信、家用电器等许多领域得到日益广泛的应用。 目前据不完全统计,全世界嵌入式处理器的品种总量已经超过1000多种,流行体系结构有30几个系列,其中8051体系的占有多半。生产8051单片机的半导体厂家有20多个,共350多种衍生产品。通常按单片机数据总线的位数将单片机分为4位、8位、16位、32位机。 四位单片机。四位单片机适合用于各种规模较小的家电类消费产品。一般的单片机厂家均有自己的四位单片机产品,有OKI公司的MSM64164C、MSM64481,NEC公司的75006×系列、EPSON公司的SMC62系列等。 典型应用领域有:PC机用的输入装置(鼠标、游戏杆)、电池充电器(Ni-Cd电池、锂电池)、运动器材、带液晶显示的音、视频产品控制器、一般家用电器的控制及遥控器、玩具控制、记时器、时钟、表、计算器、多功能电话、LCD游戏机。 八位单片机。八位单片机是目前品种最为丰富、应用最为广泛的单片机,有着体积小、功耗低、功能强、性能价格比高、易于推广应用等显著优点。目前主要分为MCS-51系列及其兼容机型和非MCS-51系列单片机。 MCS-51兼容产品因开发工具及软硬件资源齐全而占主导地位, ATMEL、PHILIPS、WINBOND是MCS-51单片机生产的老牌厂家,CYGNAL及ST也推出新的产品,其中ST的新推出的μPSD系列片内有大容量FLASH(128/256KB)、8/32KB的SRAM、 集成A/D、看门狗、上电复位电路、两路UART、支持在系统编程ISP及在应用中编程IAP等诸多先进特性,迅速被广大51单片机用户接受 。CYGNAL推出了Soc的51系列单片机C8051F系列。集成了A/D D/A电路、看门狗,上电复位电路、I C、SPI、CAN总线、 FLASH技术、JTAG仿真调试,并且最高达到了100MIPS 非51系列单片机在中国应用较广的有MOTOROLA68HC05/08系列、 MICROCHIP的PIC单片机以及ATMEL的AVR单片机。 八位单片机在自动化装置、智能仪器仪表、过程控制、通信、家用电器等许多领域得到广泛应用。 十六位单片机。十六位单片机操作速度及数据吞吐能力在性能上比8位机有较大提高。目前以INTEL的MCS-96/196系列、TI的MSP430 系列及MOTOROLA的68HC11系列为主 。 十六位单片机主要应用于工业控制、智能仪器仪表 、便携式设备等场合。其中TI的MSP430系列以其超低功耗的特性广泛应用于低功耗场合。 三十二位单片机。32位单片机是单片机的发展趋势,随着技术发展及开发成本和产品价格的下降将会与8位机并驾齐驱。生产32位单片机的厂家与8位机的厂家一样多。MOTOROLA、TOSHIBA、HITACH、NEC、EPSON、MITSUBISHI、SAMSUNG群雄割据, 其中以32位ARM单片机及MOTOROLA的MC683××、68K系列应用相对广泛。基于ARM核的单片机占据了2001年的32位单片机市场75%的份额。 单片机技术的发展。从20年来单片机发展历程可以看出,单片机技术的发展以微处理器(MPU)技术及超大规模集成电路技术的发展为先导,以广泛的应用领域拉动,表现出以下技术特点。 8位、32位单片机共同发展。这是当前单片机技术发展的另一动向。长期以来,单片机技术的发展是以8位机为主的。随着移动通讯、网络技术、多媒体技术等高科技产品进入家庭,32位单片机应用得到了长足、迅猛的发展。 单片机速度越来越快。为提高单片机抗干扰能力,降低噪声,降低时钟频率而不牺牲运算速度是单片机技术发展之追求。一些8051单片机兼容厂商改善了单片机的内部时序,在不提高时钟频率的条件下,使运算速度提高了很多,Motorola单片机则使用了琐相环技术或内部倍频技术使内部总线速度大大高于时钟产生器的频率。68HC08单片机使用外部振荡器而内部时钟达32M。三星电子新近推出了的ARM处理器内核Halla 低电压与低功耗。几乎所有的单片机都有Wait、Stop等省电运行方式。允许使用的电源电压范围也越来越宽。一般单片机都能在3到6V范围内工作,对电池供电的单片机不再需要对电源采取稳压措施。低电压供电的单片机电源下限已由降至、。供电的单片机已经问世。 低噪声与高可靠性技术。为提高单片机系统的抗电磁干扰能力,使产品能适应恶劣的工作环境,满足电磁兼容性方面更高标准的要求,各单片机商家在单片机内部电路中采取了一些新的技术措施。如ST公司的μPSD系列单片机片内增加了看门狗定时器,NS的COP8单片机内部增加了抗EMI电路,增强了“看门狗”的性能。 ISP及IAP。在片编程技术(In System Programming)及在应用中编程(In Application Programming)通过单片机上引出的编程线、串行数据、时钟线等对单片机编程,编程线与I/O线共享, 不增加单片机的额外引脚。ISP为开发调试提供了方便,并使单片机系统远程调试、升级成为现实 4.嵌入式系统的软件 嵌入式系统的软件从最初的汇编语言逐渐过度到C高级语言,到现在最终形成了以操作系统,出现了几十种产品,代表性的有VxWorks、QNX、Nucleus、μC/OS 、Palm OS、Windows CE以及Linux系列。在技术上有以下特征。 (1)以为新的处理器越来越多,嵌入式系统的设计更易于移植,以便在短时间内支持多种微处理器。 (2)Linux产品在嵌入式上获得了广泛的应用。Linux性能稳定,裁剪性好,开发和使用比较容易,适用于多种嵌入式处理器。Linux得到了相当广泛厂商的支持RT-Linux产品也取得了很大的进展。在家用电器、工业控制大有可为 。 5.发展和应用我国自主的嵌入式系统技术 目前,PC机的架构为Wintel所控制、垄断。在该领域,现在我们没有主动权,创新空间较小,专家估计,十年内很难有所突破。而嵌入式系统没有统一的架构,软硬件需要多种多样的组合,技术密集,市场容量大。我国在此领域有无限的创新空间 。例如“星光中国芯工程”是以数字多媒体芯片为突破口,第一次将“中国芯星光一号”率先打入国际市场的战略工程在国际上处于领先地位。在该领域已处于领导地位。在操作系统领域,有中软公司推出的“中软实时嵌入式Linux操作系统”,对外部中断可作出微秒级的响应,能提供精确的实时始终控制,实时任务和线程的并发操作和同步机制 。 6.结束语 上述描述了嵌入式系统的含义,以及嵌入式系统的发展历程、嵌入式系统的硬件、嵌入式操作系统,最后总结了我国在嵌入式系统中面临的机遇,为进一步学习嵌入式系统提供了参考,以期对研究该领域的人们有所帮助。 看了“嵌入式技术论文”的人还看: 1. 基于μC/OS的嵌入式系统应用开发研究论文 2. 浅谈JNI技术在嵌入式软件开发中的应用论文 3. 计算机科学技术论文毕业论文 4. 电子技术论文范文大全 5. 单片机技术论文
根据IEEE(电气和电子工程师协会)的定义,嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置”(devices used to control, monitor, or assist the operation of equipment, machinery or plants)。从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统最大的应用领域,冰箱、空调等的网络化、智能化将引领人们的生活步入一个崭新的空间。即使你不在家里,也可以通过电话线、网络进行远程控制。在这些设备中,嵌入式系统将大有用武之地。水、电、煤气表的远程自动抄表,安全防火、防盗系统,其中嵌有的专用控制芯片将代替传统的人工检查,并实现更高,更准确和更安全的性能。目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。
餐饮行业在日常管理经营中仍然有很大一部分企业是在采取纯手工的管理模式,管理的整体科技含量较低。下面是我为大家整理的餐饮管理系统设计论文,供大家参考。
实体店餐饮管理系统设计与实现
餐饮管理系统设计论文摘要
摘要:随着我国市场经济的快速发展,人们的生活水平提高,餐饮业迅速蓬勃发展,传统的手工作业方式已经不能满足餐饮经营者的需求。通过餐饮管理系统对实体店进行管理,具有人工管理所无法比拟的优点,能够极大地提高餐饮管理的效率,增强企业的竞争力。
餐饮管理系统设计论文内容
关键词:餐饮;管理系统;数据库
一、引言
随着社会经济持续高速增长,社会财富迅速增加,广大人民群众收入水平不断提高,生活方式随之发生巨大变化。同时,随着市场经济体制的建立健全和迅速发展,社会物质产品极大丰富,餐饮业蓬勃发展,传统的手工作业方式已经不能满足餐饮经营者的需求了。人工记账、核算、查询等工作既费时、费力,也容易出错。通过在计算机中运行餐饮管理系统,既减少了人力资源,同时提高效率,能为餐饮业赚取更大的利润,同时为消费者提供了诸多方便。
近几年来,计算机网络、分布技术日趋成熟,随着科技的发展,餐饮业的竞争也越来越激烈。想在这样竞争激烈的环境下生存,就必须运用科学的管理思想与先进的管理 方法 ,使点餐与管理一体化。这样不仅可以提高工作效率,也避免了以前手工作业的麻烦,从而使管理者能够准确、有效地管理。因此,需要建立一个科学的餐饮管理系统。
二、系统分析
(一)可行性分析
1. 技术可行性
该系统是一个小型的餐饮管理系统。采用C/S模式,在前台计算机安装客户端,处理信息,将处理结果储存在数据服务器上。目前很多企业都采用SQL Server数据库,处理数据也相当方便,得到了广泛的应用,在技术上是可行的。
2. 经济可行性
对本系统的经济效益与开发成本进行分析。本系统采用C/S结构,只要拥有一台PC电脑,无需复杂设置即可实施,并且相对人工作业来说,节省人力、物力,具有较好的经济效益。
3. 操作可行性
操作可行性指系统的操作方式在用户组织中是否行得通。餐饮管理系统的功能较为简单,页面简单明了,没有那些繁琐的、不必要的操作。用户一看就能够知道应该怎么进行操作。管理员的界面也较为简单,都是些基本的操作,员工可以很快掌握,在操作方面也很容易实现。
(二)功能需求分析
餐饮管理系统是对餐饮流程的数字化的管理,既可以帮助餐厅更好地管理职员信息,又方便了顾客消费,并且不同的用户使用权限不同。具体功能有:用户的登录、基本信息、点/加菜、账单查询、结账、辅助功能、系统维护、系统设置等。
用户登录:用户选择自己的身份(超级管理员、经理、顾客)登录,若身份选择错误,则登不上。用户根据自己的账号、密码及正确的身份登录到系统主界面。
职员信息:超级管理员及经理有权限管理职员的基本信息。职员信息功能模块包括总体职员的查询、职员信息的添加、职员信息的修改以及职员信息的删除。
桌台信息:超级管理员及经理有权限管理桌台的基本信息。桌台信息功能模块包括桌台的查询、桌台信息的添加、桌台信息的修改及桌台信息的删除。
点/加菜:该功能实现顾客点菜及加菜。
账单查询:顾客可根据自己的消费情况,查询自己的账单。
结账:根据该桌台的消费情况及包间费,汇总出总价,并可计算实收与找零。
辅助功能:作为一个系统,应该具备一些辅助的功能,如日历及计算器。
系统维护:只有超级管理员才有这样的权限,可实现权限管理、系统备份、系统恢复。
系统设置:包括系统的口令设置及锁定系统。
三、系统设计与实现
系统模块主要包括五个主要模块:基本信息模块、桌台操作模块、系统设置模块、辅助工具模块、退出模块。其中基本信息模块又分两个子模块:桌台基本信息和职员基本信息。桌台操作是本系统主要的功能,它包括对桌台实行开台、点菜的操作,同时针对某一个桌台可以进行消费查询及结账。系统设置模块主要包括口令设置和锁定系统,该模块主要是对系统的安全性的一个保障,也是本系统不可缺少的一部分。作为一个系统应该需要有一些辅助工具,如日历、计算器、记事本,所以该系统有一个辅助工具模块。一个完整的系统肯定有退出模块,即退出系统。
餐饮管理系统中主要功能的详细设计如下。
(一)登录模块设计
登录模块以登录的用户名、密码和用户权限作为搜索条件,在数据库中进行查询。单击登录按钮时,登录模块首先判断是否输入了用户名和密码,如果没有输入用户名和密码将弹出提示框,提示用户输入登录系统的用户名和密码;如果输入了用户名和密码,系统将判断用户名、密码和权限是否匹配。若匹配,则登录成功。
(二)主界面模块设计
成功登录后,会显示主界面,主界面中应该包括菜单栏、桌台显示和显示系统状态栏。在窗体加载时,首先判断登录用户的权限,根据用户登录的权限,分配不同的功能。当窗体焦点触发时,系统从数据库中检索出所有桌台的状态信息,然后调用自定义的AddItem方法添加桌台。用户点击某个桌台时,系统会根据该桌台当前的状态,弹出不同的右键菜单。
(三)开台模块设计
开台窗体中应该有桌台信息和职员信息及用餐人数,窗体加载时,将数据库中的所有的桌台信息和职员信息检索出来显示在ComboBox控件上。应在用餐人数文本框中输入用餐人数,并且用餐人数应是大于0的整数数字,保存后即对桌台进行开台操作。
(四)点菜模块设计
点菜模块可利用TreeView控件来显示所有的菜系,利用DataGridView控件显示顾客消费的所有信息。设计该模块时通过数据库中检索出所有的菜系名称显示到TreeView中,用户选择菜系后,应设计一个存储这些被选择的菜系的数据表,并在该模块中能显示出来,以便使误点的菜可以删除。
(五)结账模块设计
结账模块中,可在数据库中检索出顾客消费的所有项目,应有菜系的消费和包间的消费,根据两者的消费,显示出总的消费。顾客输入金额时,系统可自动找零,并显示到界面上。
(六)桌台基本信息模块设计
桌台基本信息应该具有对于桌台添加、删除、修改、查询等操作。添加桌台信息时,在数据库中检索桌台信息的数据表,并将信息添加到信息表中。查询桌台信息时,系统连接数据库,在数据库中检索到数据库的数据表,并将桌台信息显示到界面上。
四、小结
小型实体店餐饮管理系统是在.net平台上进行,结合后端的SQL Server 2000数据库技术,完成了桌台的管理、职员的管理、顾客开台,点菜/加菜、账目查询及消费账目结算等功能。系统信息查询灵活又方便、数据存储安全可靠、成本低。另外系统自身有如下优点。
一是使用较方便,用户上手快。
二是系统自动结账,结账速度快速且准确。
三是系统为提高客户服务质量提供了有效的技术保证。
通过小型实体店餐饮管理系统能能够切实有效地指导工作人员规范业务操作流程,更高效、快捷地实现业务的管理,保障顾客信息的安全,提高管理水平和工作效率,进而提高业务竞争能力。
餐饮管理系统设计论文文献
[1]吕品,陈凤培.某中小型餐饮店管理信息系统的设计与开发[J].桂林航天工业高等专科学校学报,2011(04).
[2]崔海龙,李允.电子商务在餐饮业中的运用[J].管理观察,2009(18).
[3]余伟,赵亮.基于SOA的银行中间交易平台的设计与架构[J].科技广场,2011(07).
餐饮管理系统中数据完整性的设计
餐饮管理系统设计论文摘要
摘 要: 以餐饮管理系统数据库中部分表为例,详细介绍个人对数据完整性设计思路和设计方法,通过实例阐述数据完整性在实践中的应用,并给出基于SQLSERVERDE语言的描述。
餐饮管理系统设计论文内容
关键词: 数据库;数据完整性;约束;触发器
中图分类号:TP311 文献标识码:A 文章 编号:1671-7597(2011)1210173-01
数据库的创建是一件非常容易的事情,但是设计一个严谨、安全、可靠的数据库就不那么容易了,它需要你有扎实的理论知识做基础,还需要具备一定的分析问题解决问题的能力。数据库的设计经过需求分析、数据库概念机构设计、逻辑结构设计之后我们就应考虑数据完整性的设计了。数据完整性是最大限度的保证数据的正确性、可靠性、一致性。数据完整性包含三个方面的内容即实体完整性、参照完整性(引用完整性)和用户自定义完整性(域完整性)。
下面以餐饮管理系统部分可以实现点菜和结账的表为例阐述以上完整性的设计。餐饮管理涉及的表的关系模式为:桌台表zt(桌号zh,桌名zm,容纳人数rnrs,状态zt,类型lx),菜单表cd(菜品编号cpbh,菜品名称cpmc,规格gg,类别lb,单价dj,成本价cbj),订单表dd(订单编号ddbh,订单日期ddrq,桌号zh,消费金额xfje),点菜表dc(订单编号ddbh,菜品编号cpbh,数量sl)。以上四个表的定义如下:
Create table zt (zh char(4) primary key ,zm char(8) unique, rnrs int check (rnrs>=0),zt bit,lx char(8) check (lx='大厅' or lx='包厢' lx='vip'))
Create table cd(cpbh char(5) primary key, cpmc char(12),gg char(10),lb char(8),dj numeric(6,1) check(dj>=0),cbj numeric(6,1) check(cbj>=0))
Create table dd (ddbh char(10) primary key,ddrq datetime,zh char(4) foreign key references zt(zh), xfje numeric(10,1))
Create table dc (ddbh char(10) foreign key references dd(ddbh),cpbh char(5) foreign key references cd(cpbh),sl int check(sl>=0) default 1,primary key(ddbh,cpbh))
1 实体完整性(表完整性)
实体完整性又叫做表完整性,是对表中主键的约束。实体完整性的规则要求:在任何关系的任何一个元组中,主键的值不能为空值、也不能取重复的值。建立实体完整性的目的是用于保证数据库表中的每一个元组都是惟一的。是否可以改变主键值或删除一整行,取决于主键和其他表之间要求的完整性级别。实体完整性的定义比较简单。实现“实体完整性”的方法有primary key约束、unique约束、标识列、惟一索引。在此对桌台表zt中的桌号zh、菜单表cd表中的菜品编号cpbh以及订单表dd中的订单编号ddbh定义了primary key约束。在定义的时候一定要注意,一张完整的表定义只能有一个主键(PRIMARY KEY),但是可以没有UNIQUE约束。
2 参照完整性规则(引用完整性规则)
现实世界中的实体之间存在某种联系。在关系模型中实体及实体间的联系都是用关系来描述的,这样就自然存在着关系与关系间的引用。通过在同一个数据库的两个表中进行主键约束和外键约束来实现,参照的列和被参照的列的必须具有相同的属性。
参照完整性规则规则要求:“不引用不存在的实体”。即:不允许在一个关系中引用另一个关系中不存在的元组。其目的用于确保相关联的表间的数据保持一致。参照完整性是对外键的约束,要求外键的取值只能为两种情况:若取非空值,则它必须是主表中存在的值。要么取空值(null)。设置了参照完整性禁止在从表中插入包含主表中不存在的关键字的数据行;禁止删除在从表中的有对应记录的主表记录。
在如上四个表中对订单表dd的桌号zh、点菜表对此dc的订单编号ddbh及菜品编号cpbh分别设置了外键。另外外键的设计也可由触发器或编程语言来设定。以订单表dd为例触发器设置方法如下:
CREATE TRIGGER insert_xs ON dd
AFTER INSERT
AS
IF EXISTS
(SELECT * FROM INSERTED
WHERE zh IN (SELECT zh FROM zt))
PRINT '添加成功!’
ELSE
BEGIN
PRINT '桌号与存在的桌号不符!’
ROLLBACK TRANSACTION
END
同样可以对点菜表设置一个触发器要求dc的订单编号ddbh及菜品编号cpbh也具有参照性。参照完整性是用来维护相关数据表之间数据一致性的手段,通过实现引用完整性,可以避免因一个数据表的记录改变而使另一个数据表内的数据变成无效的值。
3 域完整性
域完整性也称为列完整性或用户定义的完整性,用于限制用户向列中输入的内容。域完整性规则要求由用户根据实际情况,定义表中属性的取值范围。其目的用于保证给定字段中数据的有效性,即保证数据的取值在有效的范围内。
设置域完整性的方法是限制列的数据类型、精度、范围、格式和长度等。可以通过指定数据类型、CHECK约束、DEFAULT约束、NOT NULL约束和创建规则、默认值等数据库对象来实施。
数据库中存储的数据多种多样,为每一列指定一个准确的数据类型是设计表的第一步,列的数据类型规定了列上允许的数据值。当添加或修改数据时,其类型必须要符合建表时所指定的数据类型。这种方式为数据库中的数据完整性提供了最基本的保障。
约束是SQL Server提供的自动保持数据完整性的一种方法,是独立于表结构的。规则是实现域完整性的方法之一,用来验证一个数据库中的数据是否处于一个指定的值域范围内,是否与特定的格式相匹配。当数据库中的数据值被更新或插入时,就要检查新值是否遵循规则。如果不符合规则就拒绝执行更新或插入操作。
在餐饮系统相关表中我们对相应的列设置了数据类型及长度度限制,并对菜单表cd的单价dj设置了check(dj>=0)的约束,对点菜表dc的数量sl列(sl int check(sl>=0) default 1)设置了check约束和默认值的约束。当然对于以上约束我们都可通过定义规则的方法实现。如:
用create rule dyl as@x>=0来定义一个大于零的约束,然后用sp_bindrule dyl,'‘语句和sp_bindrule dyl,''语句将其绑定到菜单表cd的单价dj列及点菜表dc的数量sl列上。
对于菜品编号cpbh我们规定菜类必须以类别的代表字母作为第一个字符,小分类的代表字母为第二个字符后面跟3位数字来表示。如CL001表示青菜类、LN001可表示奶类饮料。类别分类如表1:
表1 菜单类别表
为了实现上述编码我们用规则来实现如下:
Create rule cpbm as
@BM like 'C[LQRT][0-9][0-9][0-9]'
Or @BM like 'J[PBNM][0-9][0-9][0-9]'
Or @BM like 'Y[CNGT][0-9][0-9][0-9]'
Or @BM like 'z[fm][0-9][0-9][0-9]'
sp_bindrule cpbm, ''
4 触发器实现数据完整性
当用户对数据的完整性要求更为特殊,更为复杂,以上3种完整性就无法满足用户的要求。在这种情况下,用户需要自己定义所需的完整性。实现自定义完整性的重要方法是创建触发器。触发器是一种数据库对象。是一种表或视图执行insert、delete、update操作时,被系统自动执行的特殊的存储过程。创建触发器的目的是对表实现复杂的数据完整性约束,以防止不正确的操作。它与数据库中的某个表的数据修改操作相关联,修改操作可以是INSERT、UPDATE、和DELETE这3种操作中其中一种或几种。当用户对相关表执行触发器相关的修改操作时触发器自动执行。常用于数据的参照完整性限制及级联删除、级联更新等操作的设置。以级联更新为例,分析当菜单表中的菜品编号修改时,点菜表中的菜品编号同时更新这样的操作用触发器如何实现:
create trigger upd on cd after update
as
declare @jbh char(5),@xbh char(5)
select @jbh=, @xbh=
from deleted,inserted where
print '准备级联更新点菜表中的菜品编号信息….'
update dc set cpbh=@xbh where cpbh=@jbh
print '已经级联更新了点菜表原菜品编号为'+ @jbh +'的信息'
5 应用接口编程
应用接口编程对数据库应用设计来说是负担最重的方法,但同时又是最基本、最灵活的方法。不论数据库管理系统提供了多么丰富的完整性的约束手段,利用编程接口保证数据完整性仍是所有数据库应用设计者必须掌握的关键技术之一。
6 总结
保证数据库的数据完整性,在数据库管理系统中是十分重要的。合理地使用SQL Server为数据完整性提供的各项 措施 ,对数据进行所需的约束限制,可以有效降低数据库在使用过程中可能出现的错误,提高数据库系统的可用性,减少处理数据错误所耗的费用。
餐饮管理系统设计论文文献
[1]陈伟,Sql Server2005应用系统开发教程[M].北京:清华大学出版社.
[2]Andrew Stephen Forte著,精通SQLServer 2005程序设计,贾洪峰译,清华大学出版社,2007.
[3]萨师煊、王珊,数据库系统概论(第三版)[M].北京:高等 教育 出版社,2004.
有关餐饮管理系统设计论文推荐:
1. 浅谈餐饮服务与管理论文
2. 高档餐饮服务管理研究毕业论文
3. 酒店管理系统毕业论文
4. 有关餐饮服务与管理论文
5. 学生管理系统论文
6. 学籍管理系统毕业设计论文
234 浏览 5 回答
146 浏览 4 回答
211 浏览 7 回答
329 浏览 4 回答
235 浏览 5 回答
219 浏览 4 回答
261 浏览 4 回答
123 浏览 3 回答
345 浏览 4 回答
312 浏览 6 回答
238 浏览 3 回答
336 浏览 3 回答
284 浏览 5 回答
331 浏览 3 回答
289 浏览 5 回答