动态表单数据库设计(如何建数据库动态网站)
本篇文章给大家谈谈动态表单数据库设计,以及如何建数据库动态网站对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。
数据库应用中表单的设计是基于什么编程的思想
面向对象
面向对象(Object Oriented,OO)是当前计算机界关心的重点,它是90年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。
谈到面向对象,这方面的文章非常多。但是,明确地给出对象的定义或说明对象的定义的非常少——至少我现在还没有发现。其初,“面向对象”是专指在程序设计中采用封装、继承、抽象等设计方法。可是,这个定义显然不能再适合现在情况。面向对象的思想已经涉及到软件开发的各个方面。如,面向对象的分析(OOA,Object Oriented Analysis),面向对象的设计(OOD,Object Oriented Design)、以及我们经常说的面向对象的编程实现(OOP,Object Oriented Programming)。许多有关面向对象的文章都只是讲述在面向对象的开发中所需要注意的问题或所采用的比较好的设计方法。看这些文章只有真正懂得什么是对象,什么是面向对象,才能最大程度地对自己有所裨益。这一点,恐怕对初学者甚至是从事相关工作多年的人员也会对它们的概念模糊不清。
面向对象是当前计算机界关心的重点,它是90年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。
一、传统开发方法存在问题
1.软件重用性差
重用性是指同一事物不经修改或稍加修改就可多次重复使用的性质。软件重用性是软件工程追求的目标之一。
2.软件可维护性差
软件工程强调软件的可维护性,强调文档资料的重要性,规定最终的软件产品应该由完整、一致的配置成分组成。在软件开发过程中,始终强调软件的可读性、可修改性和可测试性是软件的重要的质量指标。实践证明,用传统方法开发出来的软件,维护时其费用和成本仍然很高,其原因是可修改性差,维护困难,导致可维护性差。
3.开发出的软件不能满足用户需要
用传统的结构化方法开发大型软件系统涉及各种不同领域的知识,在开发需求模糊或需求动态变化的系统时,所开发出的软件系统往往不能真正满足用户的需要。
用结构化方法开发的软件,其稳定性、可修改性和可重用性都比较差,这是因为结构化方法的本质是功能分解,从代表目标系统整体功能的单个处理着手,自顶向下不断把复杂的处理分解为子处理,这样一层一层的分解下去,直到仅剩下若干个容易实现的子处理功能为止,然后用相应的工具来描述各个最低层的处理。因此,结构化方法是围绕实现处理功能的“过程”来构造系统的。然而,用户需求的变化大部分是针对功能的,因此,这种变化对于基于过程的设计来说是灾难性的。用这种方法设计出来的系统结构常常是不稳定的,用户需求的变化往往造成系统结构的较大变化,从而需要花费很大代价才能实现这种变化。
二、面向对象的基本概念
(1)对象。
对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。
(2)对象的状态和行为。
对象具有状态,一个对象用数据值来描述它的状态。
对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。
对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中
(3)类。
具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。
类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。
类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。
(4)类的结构。
在客观世界中有若干类,这些类之间有一定的结构关系。通常有两种主要的结构关系,即一般--具体结构关系,整体--部分结构关系。
①一般——具体结构称为分类结构,也可以说是“或”关系,或者是“is a”关系。
②整体——部分结构称为组装结构,它们之间的关系是一种“与”关系,或者是“has a”关系。
(5)消息和方法。
对象之间进行通信的结构叫做消息。在对象的操作中,当一个消息发送给某个对象时,消息包含接收对象去执行某种操作的信息。发送一条消息至少要包括说明接受消息的对象名、发送给该对象的消息名(即对象名、方法名)。一般还要对参数加以说明,参数可以是认识该消息的对象所知道的变量名,或者是所有对象都知道的全局变量名。
类中操作的实现过程叫做方法,一个方法有方法名、参数、方法体。消息传递如图10-1所示。
二、面向对象的特征
(1)对象唯一性。
每个对象都有自身唯一的标识,通过这种标识,可找到相应的对象。在对象的整个生命期中,它的标识都不改变,不同的对象不能有相同的标识。
(2)分类性。
分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。一个类就是这样一种抽象,它反映了与应用有关的重要性质,而忽略其他一些无关内容。任何类的划分都是主观的,但必须与具体的应用有关。
(3)继承性。
继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。
继承性是面向对象程序设计语言不同于其它语言的最重要的特点,是其他语言所没有的。
在类层次中,子类只继承一个父类的数据结构和方法,则称为单重继承。
在类层次中,子类继承了多个父类的数据结构和方法,则称为多重继承。
在软件开发中,类的继承性使所建立的软件具有开放性、可扩充性,这是信息组织与分类的行之有效的方法,它简化了对象、类的创建工作量,增加了代码的可重性。
采用继承性,提供了类的规范的等级结构。通过类的继承关系,使公共的特性能够共享,提高了软件的重用性。
(4)多态性(多形性)
多态性使指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。
多态性允许每个对象以适合自身的方式去响应共同的消息。
多态性增强了软件的灵活性和重用性。
如何建数据库动态网站
建立站点
MacromediaDreamweaverMX是一个站点创建和管理工具,使用它不仅可以创建单独的文档,还可以创建完整的Web站点。
站点的定义
开始使用DreamweaverMX2004来创建数据库网站的第一件事,就是定义网站,必须告诉DreamweaverMX2004网站根目录在哪里,以及服务器位置、类型等相关信息。
启动DreamweaverMX2004后,从主菜单选择站点/管理站点/新建定义一个新站点。
在弹出菜单中的本地信息栏--站点名称中输入“我的网站”,本地根文件夹中选择“E:我的网站”,在ess数据库
本系统使用的是Access2003创建了一个名为db1.mdb的数据库。系统对数据的读取,存储都是对该数据库进行操作。
在Access2003数据库中,所有的数据存储都是围绕表进行的,数据不会存储在数据库的其他位置。虽然可以有许多方法访问数据,但是它们全部来自表。可以说,表示一个数据库的灵魂。
执行开始->程序->MccrosoftOffice->MccrosoftOfficeAccess2003(安装MccrosoftOffice2003时,把OfficeAccess2003也打钩进行安装),执行文件->新建,在弹出窗口右边选择空数据库,文件名保持默认,单击按钮,从弹出窗口选择“使用设计器创建表”,填写相应的字段,具体如下表所示:
字段名称数据类型字段大小
ID自动编号
姓名文本20
性别文本30
年龄数字10
录入时间日期/时间
住址文本50
完成字段名称等录入后,选择ID为主键,数据表名称保留默认“表1”,将其保存在“E:我的网站”目录下完成数据库的建立。如图所示:
Dreamweaver与数据库的连接(使用DSN连接数据库)
如果打算在网络应用程序中使用数据库,就需要创建至少一个数据库连接。没有数据库连接的话,应用程序将不知道在什么地方找到数据库或者如何与数据库连接。在DreamweaverMX2004中创建数据库连接时,为应用程序提供了与数据库建立联系的信息或参数。
1DSN定义
(1)在控制面板中,双击管理工具,双击ODBC数据库源图标,出现ODBC数据源管理器窗口,选择系统DSN标记。
(2)单击“添加“,接着选择数据库驱动程序,本系统使用Access数据库,所以MicrosoftAccessDriver(*.mdb),单击“完成“按钮。
(3)出现ODBCMicrosoftAccess安装窗口,在数据源名一栏给连接取个名字conn,说明一栏不是必填项。
(4)单击窗口中“选择“按钮,找到数据库的所在路径(“E:我的网站”)并选中相应数据库文件,选中db1.mdb,此时ODBCAccess安装窗口中数据库一栏就会出现刚才选定的数据库文件,如图所示。
ODBC连接
2DSN连接
建立了数据库名(DSN)之后,就可以创建网络应用程序和数据库之间的ODBC连接,DSN被定义后,就能用它来调用各种参数了。
(1)启动DreamweaverMX2004,打开已经定义好的站点“我的网站”,在站点-我的网站窗口中点击鼠标右键,点新击建文件,文件名改为index.asp,双击文件index.asp使其处于编辑状态。
(2)单击“窗口”中的“数据库”,从“数据库”菜单中。在窗口中点击“+”,选择数据源名称,从弹出窗口“连接名称”一栏键入连接的名字conn;在数据源名称(DSN)一栏从下拉菜单中挑选数据库源名conn;Dreamweaver连接一栏选择使用本地DSN即可。:
制作显示数据库记录页
(1)、双击index.asp文件,使其处于编辑状态,选择应用程序的“绑定”,点击“+”,à记录集(查询);在弹出的记录集窗口“名称”填写Rs,连接选择conn,表格选择“表1”,“列”选择全部,单击确定完成记录集的绑定。;
数据库记录集
(2)、在index.asp编辑状态下,插入2行七列的表格,并使其居中,在上一行的七个空格中加入数据表中的内容标签,然后将记录集的各字段拖入下一行对应的空格中,在表格上方输入数据库总记录数X条、目前为第X条数据,并将记录集中的总记录数,第一条记录拖入对应的字中,并使其居中。
加入内容标签
(3)、选中第二行的全部表格,点击服务器行为,点击“+”选择重复区域,保持默认状态,点击确定完成重复显示区的设计。
(4)、点击菜单“插入”,选择“应用程序对象”->记录集分页->记录集导航条,在弹出窗口(保持默认值)点击确定。如图所示:
制作添加数据记录页
新建一网页,命名为add.asp,并使其处于编辑状态,点击菜单“插入”,选择“应用程序对象”->插入记录->插入记录表单向导,在弹出窗口“连接”项选择conn,“插入到表”选择“表1”,“插入后转到”填写a.asp(提交成功显示网页,将在下一步建立),删除不需要的字段(ID),然后点击确定按钮完成页面的制作。
插入记录表单
记录表单
建立新的一页,保存为a.asp,并在页面上填写“添加数据成功!”完成页面设计。
制作修改数据记录页
打开index.asp文件,使其处于编辑状态,把鼠标定位在第一行,点击拆分单元格图标,:
表格属性
拆分表格
将列拆分为2列。第二行用同样方式拆分为二列,在最后一列填写“修改”字符,全选“修改”,使其被选定,选择服务器行为—>“+”,转到详细页面,从弹出菜单中,详细页填写edit.asp,其它保持不变完成页面设置。
转到详细页面
创建edit.asp新页,用上述同样的方法为其绑定一个名为Rs的记录集(筛选项选择ID,其它保持默认值)。点击菜单“插入”,选择“应用程序对象”->更新记录->更新记录表单向导,在弹出窗口“连接”项选择conn,“要更新表格”选择“表1”,“选取记录是”处选择Rs,唯一键列选择ID,“更新后转到”填写index.asp(修改显示网页,将在下一步建立),删除不需要的字段(ID),然后点击确定按钮完成页面的制作(其余为默认值)。
更新记录表单
制作删除数据记录页
用上述学过的方法在Index.asp上创建“删除”连接。新建网页命名为delete.asp,并打开它,在其上创建一个七行二列的表格,并在左边的表格上填写相应的字段名,然后给网页绑定一个记录集,并对其字段拖到对应的右这表格中。创建一表单,并把上述所建的表格拖入表单内,同时为表单建立一个删除确定按钮,
删除数据记录页
点击服务器行为->记录集分页->移致特定记录,按确定按钮(保持默认值)。点击服务器行为->删除记录,在弹出菜单中填上相关内容。如图所示:
删除记录
一个比较完整的ASP动态网站总算完成了。读者依照本教程的指导,自己动手操作可以实现ASP+Access动态网站的组建。
动态网页连数据库access的详细过程
常用数据库语句
1.SELECT语句:命令数据库引擎从数据库里返回信息,作为一组记录。
2.INSERT INTO语句:添加一个或多个记录至一个表。
3.UPDATE语句:创建更新查询来改变基于特定准则的指定表中的字段值。
4.DELETE语句:创建一个删除查询把记录从 FROM子句列出并符合 WHERE子句的一个或更多的表中清除。
5.EXECUTE语句:用于激活 PROCEDURE(过程)
用 ASP来做一个自己的通讯录练练手吧……
一、建立数据库:
用 Microsoft Access建立一个名为 data.mdb的空数据库,使用设计器创建一个新表。输入以下几个字段:
字段名称数据类型说明其它
ID自动编号数据标识字段大小:长整型新值:递增索引:有(无重复)
username文本姓名缺省值
usermail文本E-mail缺省值
view数字查看次数字段大小:长整型默认值:0索引:无
indate时间日期加入时间缺省值
保存为 data.mdb文件,为了便于说明,只是做了一个比较简单的库。
二、连接数据库
方法1:
Set conn= Server.CreateObject("ADODB.Connection")
conn.Open"driver={Microsoft Access Driver(*.mdb)};dbq="&Server.MapPath("data.mdb")
方法2:
Set conn= Server.CreateObject("ADODB.Connection")
conn.Open"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("data.mdb")
注意:一个页面中,只要连接一次就可以了,数据库使用完后要及时关闭连接。
conn.Close
Set conn= Nothing
三、添加新记录到数据库
Set conn= Server.CreateObject("ADODB.Connection")
conn.Open"driver={Microsoft Access Driver(*.mdb)};dbq="&Server.MapPath("data.mdb")
username="风云突变"
usermail="ec0705liujuan@163.com"
indate= Now()
sql="insert into data(username,usermail,indata) values('"&username&"','"&usermail&"','"&indate&"')"
conn.Execute(sql)
conn.Close
Set conn= Nothing
说明:建立数据库连接;通过表单获取姓名、E-mail字符串,Now()获取当前时间日期;使用 insert into语句添加新记录;conn.Execute来执行;最后关闭。
四、选择数据库里的记录
1.选择所有记录的字段(按记录倒序排序):sql="select* from data order by ID desc"
2.选择所有记录的姓名和E-mail字段(不排序):sql="select username,usermail from data"
3.选择姓名为“风云突变”的所有记录:sql="select* from data where username='"风云突变"'"
4.选择使用 163信箱的所有记录(按查看次数排序):sql="select* from data where usermail like'%"@163.com"%' order by view desc"
5.选择最新的10个记录:sql="select top 10* from data order by ID desc"
SQL语句已经知道了,不过在Web应用时,还得创建一个 RecordSet对象得到记录集,才能把从数据库里取出的值应用在网页上,如果现在将所有的记录显示在网页上就这样:
Set conn= Server.CreateObject("ADODB.Connection")
conn.Open"driver={Microsoft Access Driver(*.mdb)};dbq="&Server.MapPath("data.mdb")
sql="select* from data"
Set rs= Server.CreateObject("ADODB.RecordSet")
rs.Open sql,conn,1,1
Do While Not rs.Eof
Response.Write"<p>姓名:"& rs("username")&"E-mail:"& rs("usermail")&"查看:"& rs("view")&"次"& rs("indate")&"加入</p>"
rs.MoveNext
Loop
rs.Close
Set rs= Nothing
conn.Close
Set conn= Nothing
说明:建立数据库连接;创建 rs得到记录集;循环显示记录,rs.Eof表示记录末,rs.MoveNext表示移到下一个记录;最后关闭。
五、修改(更新)数据库记录
修改记录的E-mail:
Set conn= Server.CreateObject("ADODB.Connection")
conn.Open"driver={Microsoft Access Driver(*.mdb)};dbq="&Server.MapPath("data.mdb")
ID= 1
usermail="ec0705liujuan@163.com"
sql="update data set usermail='"&usermail&"' where ID="&CInt(ID)
conn.Execute(sql)
conn.Close
Set conn= Nothing
说明:建立数据库连接;获取记录ID、新 E-mail字符串;使用 update语句修改记录;conn.Execute来执行;最后关闭。
如果使记录的查看值加1,则:sql="update data set view=view+1 where ID="&CInt(ID)
六、删除数据库记录
删除某一条记录:
Set conn= Server.CreateObject("ADODB.Connection")
conn.Open"driver={Microsoft Access Driver(*.mdb)};dbq="&Server.MapPath("data.mdb")
ID= 1
sql="delete from data where ID="&CInt(ID)
conn.Execute(sql)
conn.Close
Set conn= Nothing
说明:建立数据库连接;获取记录ID;使用 delete语句删除记录;conn.Execute来执行;最后关闭。
删除多条记录为:sql="delete from data where ID in(ID1,ID2,ID3)"
删除所有记录为:sql="delete from data"
关于动态表单数据库设计的内容到此结束,希望对大家有所帮助。