ImageVerifierCode 换一换
格式:DOCX , 页数:47 ,大小:48.70KB ,
资源ID:3985362      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3985362.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(五 Adobe Flash Pro教程之使用数据.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

五 Adobe Flash Pro教程之使用数据.docx

1、五 Adobe Flash Pro教程之使用数据评论 (0) 本地 SQL 数据库的用途 关于 AIR 数据库和数据库文件 关于关系数据库 关于 SQL 关于 SQL 数据库类 关于同步和异步执行模式 有关使用 SQL 数据库的快速介绍和代码示例,请参阅 Adobe Developer Connection 中的以下快速入门文章: 异步处理本地 SQL 数据库 (Flex) 同步处理本地 SQL 数据库 (Flex) 使用加密数据库 (Flex) 异步处理 SQL 数据库 (Flash) 同步处理本地 SQL 数据库 (Flash) 使用加密数据库 (Flash)Adobe AIR 包括一个基

2、于 SQL 的关系数据库引擎,该引擎在运行时中运行,数据以本地方式存储在运行 AIR 应用程序的计算机上的数据库文件中(例如,在计算机的硬盘驱动器上)。由于数据库的运行和数据文件的存储都在本地进行,因此,不管网络连接是否可用,AIR 应用程序都可以使用数据库。这样,运行时的本地 SQL 数据库引擎为存储永久的本地应用程序数据提供了一种便利机制,特别是您具有 SQL 和关系数据库经验时。本地 SQL 数据库的用途AIR 本地 SQL 数据库功能可以用于将应用程序数据存储在用户的本地计算机上的任何目的。Adobe AIR 包括在本地存储数据的几种机制,各机制具有不同的优点。以下是本地 SQL 数据

3、库在 AIR 应用程序中的一些可能用途: 对于面向数据的应用程序(例如通讯簿),数据库可以用于存储主应用程序数据。 对于面向文档的应用程序(用户创建要保存并可能共享的文档),可以在用户指定的位置将每个文档另存为数据库文件。(不过请注意,除非加密了数据库,否则任何 AIR 应用程序都可以打开该数据库文件。对于可能存在敏感信息的文档,建议使用加密。) 对于支持网络的应用程序,数据库可以用于存储应用程序数据的本地缓存,或者在网络连接不可用时暂时存储数据。可以创建一种将本地数据库与网络数据存储同步的机制。 对于任何应用程序,数据库都可以用于存储单个用户的应用程序设置,例如用户选项或应用程序信息(如窗口

4、大小和位置)。关于 AIR 数据库和数据库文件单个 Adobe AIR 本地 SQL 数据库作为单个文件存储在计算机的文件系统中。运行时包括 SQL 数据库引擎,该引擎管理数据库文件的创建和结构化以及操作和检索数据库文件中的数据。运行时不指定在文件系统上存储数据库数据的方式或位置;相反,每个数据库完全存储在单个文件中。您指定在文件系统中存储数据库文件的位置。单个 AIR 应用程序可以访问一个或多个单独的数据库(即单独的数据库文件)。由于运行时将每个数据库作为单个文件存储在文件系统上,因此可以在需要时按照应用程序的设计和操作系统的文件访问约束查找您的数据库。每个用户都可以具有其特定数据的单独数据

5、库文件,或者数据库文件可以由在单个计算机上共享数据的所有应用程序用户访问。由于数据对单个计算机是本地的,因此在不同计算机上的用户之间并不自动共享数据。本地 SQL 数据库引擎未提供对远程数据库或基于服务器的数据库执行 SQL 语句的任何功能。关于关系数据库关系数据库是一种在计算机上存储(和检索)数据的机制。数据被组织到表中:行表示记录或项目,而列(有时称为“字段”)将每个记录分到各个值中。例如,通讯簿应用程序可能包含“朋友”表。表中的每个行都表示存储在数据库中的单个朋友。表的列表示名字、姓氏、出生日期等数据。对于表中的每个朋友行,数据库为每个列存储一个单独的值。关系数据库设计用于存储复杂数据,

6、其中一个项目与其他类型的项目关联或相关。在关系数据库中,应该将具有一对多关系(其中单个记录可以与不同类型的多个记录相关)的任何数据分到不同的表中。例如,假定您希望通讯簿应用程序为每个朋友存储多个电话号码;这就是一对多关系。“朋友”表包含每个朋友的所有个人信息。单独的“电话号码”表包含所有朋友的所有电话号码。除了存储有关朋友和电话号码的数据外,每个表都需要一段数据来跟踪这两个表之间的关系,以便使单个朋友记录与其电话号码匹配。该数据称为主键 将一个表中的每个行与该表中的其他行区分开的唯一标识符。主键可以是“自然键”,这意味着它是自然区分表中每个记录的数据项目之一。在“朋友”表中,如果您知道朋友的出

7、生日期都是不同的,则可以将出生日期列用作“朋友”表的主键(自然键)。如果没有自然键,则应单独创建一个主键列,如“朋友 id”(应用程序用于区分各行的人工值)。使用主键,可以设置多个表之间的关系。例如,假定“朋友”表有一个“朋友 id”列,其中包含每行(每个朋友)的唯一编号。 可以用以下两列来构建相关的“电话号码”表:一个列包含电话号码所属的朋友的“朋友 id”,另一列包含实际的电话号码。这样,不管单个朋友具有多少个电话号码,都可以将它们全部存储在“电话号码”表中,并可以使用“朋友 id”主键将其链接到相关的朋友。在相关表中使用一个表的主键指定记录之间的联系时,相关表中的值称为外键。与许多数据库

8、不同,AIR 本地数据库引擎不允许您创建外键约束(即自动检查插入的或更新的外键值在主键表中是否具有对应行的约束)。然而,外键关系是关系数据库结构的重要部分,而且在数据库的表之间创建关系时应该使用外键。关于 SQL结构化查询语言 (SQL) 用于关系数据库以操作和检索数据。SQL 是一种描述性语言,而不是一种过程语言。SQL 语句描述您所需的一组数据,而不是提供有关它应该如何检索数据的计算机指令。数据库引擎确定如何检索该数据。SQL 语言已由美国国家标准协会 (ANSI) 进行了标准化。Adobe AIR 本地 SQL 数据库支持 SQL-92 标准的大部分内容。有关 Adobe AIR 中支持

9、的 SQL 语言的特定说明,请参阅本地数据库中的 SQL 支持。关于 SQL 数据库类要在 ActionScript 3.0 中使用本地 SQL 数据库,请使用 flash.data 包中这些类的实例:类说明flash.data.SQLConnection提供创建和打开数据库(数据库文件)的方式,以及执行数据库级操作和控制数据库事务的方法。flash.data.SQLStatement表示对数据库执行的单个 SQL 语句(单个查询或命令),包括定义语句文本和设置参数值。flash.data.SQLResult提供一种通过执行语句获取信息或结果的方法,如执行 SELECT 语句后的结果行、受 U

10、PDATE 或 DELETE 语句影响的行数等。若要获取描述数据库结构的架构信息,请使用 flash.data 包中的以下类:类说明flash.data.SQLSchemaResult充当通过调用 SQLConnection.loadSchema() 方法生成的数据库架构结果的容器。flash.data.SQLTableSchema提供描述数据库中单个表的信息。flash.data.SQLViewSchema提供描述数据库中单个视图的信息。flash.data.SQLIndexSchema提供描述数据库中表或视图的单个列的信息。flash.data.SQLTriggerSchema提供描述数据

11、库中单个触发器的信息。flash.data 包中的其他类提供用于 SQLConnection 类和 SQLColumnSchema 类的常数:类说明flash.data.SQLMode定义一组常量,它们表示 SQLConnection.open() 和 SQLConnection.openAsync() 方法的 openMode 参数的可能值。flash.data.SQLColumnNameStyle定义一组常量,它们表示 SQLConnection.columnNameStyle 属性的可能值。flash.data.SQLTransactionLockType定义一组常量,它们表示 SQLC

12、onnection.begin() 方法的 option 参数的可能值。flash.data.SQLCollationType定义一组常数,它们表示 SQLColumnSchema() 构造函数的 SQLColumnSchema.defaultCollationType 属性和 defaultCollationType 参数的可能值。此外,flash.events 包中的以下类表示所用的事件(和支持常数):类说明flash.events.SQLEvent定义其任何操作成功执行时 SQLConnection 或 SQLStatement 实例调度的事件。每个操作都具有一个在 SQLEvent 类

13、中定义的关联事件类型常数。flash.events.SQLErrorEvent定义 SQLConnection 或 SQLStatement 实例在其任何操作导致错误时调度的事件。flash.events.SQLUpdateEvent定义因执行 INSERT、UPDATE 或 DELETE SQL 语句而导致其连接数据库之一中的表数据更改时 SQLConnection 实例调度的事件。最后,flash.errors 包中的以下类提供有关数据库操作错误的信息:类说明flash.errors.SQLError提供有关数据库操作错误的信息,包括尝试的操作和出错原因。flash.errors.SQLE

14、rrorOperation定义一组常数,它们表示 SQLError 类的 operation 属性(它指示导致错误的数据库操作)的可能值。关于同步和异步执行模式编写代码以处理本地 SQL 数据库时,会指定以两种执行模式之一执行数据库操作:异步或同步执行模式。通常,代码示例说明如何以这两种方式执行每个操作,以便您可以使用最适合您需求的示例。在异步执行模式中,为运行时提供一个指令,运行时将在请求的操作完成或失败时调度事件。首先,通知数据库引擎执行操作。在应用程序继续运行的同时,数据库引擎在后台工作。最后,完成操作时(或者它失败时),数据库引擎调度事件。由事件触发的代码执行后续操作。此方法具有一个重

15、要的优点:运行时在后台执行数据库操作,同时主应用程序代码继续执行。如果数据库操作花费大量的时间,则应用程序继续运行。最重要的是,用户可以继续与其交互,而屏幕不会冻结。但是,与其他代码相比,编写异步操作代码可能更加复杂。在必须将多个相关的操作分配给各个事件侦听器方法的情况下,通常会出现此复杂性。从概念上说,将操作作为单个步骤序列(一组同步操作,而不是分到几个事件侦听器方法中的一组操作)进行编码更为简单。除了异步数据库操作外,Adobe AIR 还允许您同步执行数据库操作。在同步执行模式中,操作不在后台运行。相反,它们以与所有其他应用程序代码相同的执行序列运行。通知数据库引擎执行操作。然后,代码在

16、数据库引擎工作时暂停。完成操作后,继续执行下一行代码。异步还是同步执行操作是在 SQLConnection 级别上设置的。使用单个数据库连接,无法同步执行某些操作或语句,同时异步执行其他操作或语句。通过调用 SQLConnection 方法打开数据库,可以指定 SQLConnection 是在同步还是异步执行模式下操作。如果调用 SQLConnection.open(),则连接在同步执行模式下操作;如果调用 SQLConnection.openAsync(),则连接在异步执行模式下操作。使用 open() 或 openAsync() 将 SQLConnection 实例连接到数据库后,除非先关

17、闭再重新打开到数据库的连接,否则该实例将固定为同步或异步执行模式。每种执行模式各有其优点。虽然每种模式的大多数方面是类似的,但是在每种模式下工作时要牢记一些差异。有关这些主题的详细信息以及在每种模式下工作的建议,请参阅使用同步和异步数据库操作。更多帮助主题评论 (0) 创建数据库 创建数据库表 数据库中必须定义了应用程序可以访问的表,应用程序才可以添加或检索数据。下面说明了创建数据库和在数据库中创建数据结构的任务。虽然这些任务的使用频率低于数据插入和数据检索,但大多数应用程序都必须使用这些任务。 创建数据库要创建数据库文件,需要首先创建 SQLConnection 实例。调用其 open()

18、方法在同步执行模式下打开它,或者调用其 openAsync() 方法在异步执行模式下打开它。open() 和 openAsync() 方法用于打开到数据库的连接。如果传递的 File 实例引用 reference 参数(第一个参数)的不存在的文件位置,则 open() 或 openAsync() 方法将在该文件位置创建一个数据库文件,并打开到新创建的数据库的连接。无论创建数据库时调用的是 open() 方法还是 openAsync() 方法,数据库文件的名称都可以是采用任何文件扩展名的任何有效文件名。如果调用 reference 参数为 null 的 open() 或 openAsync()

19、方法,则将创建新的内存中数据库,而不是在磁盘上创建数据库文件。以下代码清单说明使用异步执行模式创建数据库文件(新数据库)的过程。在本例中,数据库文件保存在指向应用程序存储目录中,文件名为“DBSample.db”:import flash.data.SQLConnection; import flash.events.SQLErrorEvent; import flash.events.SQLEvent; import flash.filesystem.File; var conn:SQLConnection = new SQLConnection(); conn.addEventListen

20、er(SQLEvent.OPEN, openHandler); conn.addEventListener(SQLErrorEvent.ERROR, errorHandler); / The database file is in the application storage directory var folder:File = File.applicationStorageDirectory; var dbFile:File = folder.resolvePath(DBSample.db); conn.openAsync(dbFile); function openHandler(ev

21、ent:SQLEvent):void trace(the database was created successfully); function errorHandler(event:SQLErrorEvent):void trace(Error message:, event.error.message); trace(Details:, event.error.details); 注: 尽管 File 类用于指向特定本机文件路径,但这会导致应用程序无法跨平台工作。例如,路径 C:Documents and Settingsjoetest.db 仅适用于 Windows。出于以上原因,最好

22、使用 File 类的静态属性(如 File.applicationStorageDirectory)和 resolvePath() 方法(如上一示例所示)。有关详细信息,请参阅File 对象的路径。要同步执行操作,请在使用 SQLConnection 实例打开数据库连接时,调用 open() 方法。以下示例说明如何创建和打开同步执行其操作的 SQLConnection 实例:import flash.data.SQLConnection; import flash.errors.SQLError; import flash.filesystem.File; var conn:SQLConnec

23、tion = new SQLConnection(); / The database file is in the application storage directory var folder:File = File.applicationStorageDirectory; var dbFile:File = folder.resolvePath(DBSample.db); try conn.open(dbFile); trace(the database was created successfully); catch (error:SQLError) trace(Error messa

24、ge:, error.message); trace(Details:, error.details); 创建数据库表在数据库中创建表包括使用与执行 SELECT、INSERT 等 SQL 语句相同的过程对该数据库执行 SQL 语句。要创建表,请使用 CREATE TABLE 语句,该语句包括新表的列和约束的定义。有关执行 SQL 语句的详细信息,请参阅使用 SQL 语句。以下示例演示如何使用异步执行模式在现有数据库文件中创建一个名为“employees”的表。请注意,此代码假定存在一个名为 conn 的 SQLConnection 实例,并且该实例已经实例化并连接到数据库。import fl

25、ash.data.SQLConnection; import flash.data.SQLStatement; import flash.events.SQLErrorEvent; import flash.events.SQLEvent; / . create and open the SQLConnection instance named conn . var createStmt:SQLStatement = new SQLStatement(); createStmt.sqlConnection = conn; var sql:String = CREATE TABLE IF NOT EXISTS employees ( + empId INTEGER PRIMARY KEY AUTOINCREMENT, + firstName TEXT, + lastName TEXT, + salary NUMERIC CHECK (salary 0) + ); createStmt.text = sql; createS

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1