一、oracle record用处
Oracle PL/SQL中如何使用%TYPE和%ROWTYPE
在许多情况下,PL/SQL变量可以用来存储在数据库表中的数据。在这种情况下,变量应该拥有与表列相同的类型。例如,students表的first_name列的类型为VARCHAR2(20),我们可以按照下述方式声明一个变量:
但是如果first_name列的定义改变了会发生什么(比如说表改变了,first_name现在的类型变为VARCHAR2(25))?那就会导致所有使用这个列的PL/SQL代码都必须进行修改。如果你有很多的PL/SQL代码,这种处理可能是十分耗时和容易出错的。
这时,你可以使用”%TYPE”属性而不是将变量类型硬性编码。
v_FirstName students.first_name%TYPE;
通过使用%TYPE,v_FirstName变量将同students表的first_name列的类型相同(可以理解为将两者邦定起来)。
每次匿名块或命名块运行该语句块以及编译存储对象(过程、函数、包、对象类和触发器)时,就会确定该类型。
使用%TYPE是非常好的编程风格,因为它使得PL/SQL更加灵活,更加适应于对数据库定义的更新。
PL/SQL记录类型类似于C语言中的结构,是一种复合类型,是用户自定义的。
记录提供了一种处理独立的但又作为一个整体单元相关的变量的机制。请看:
这3个变量在逻辑上是相互关联的,因为他们指向students表中不同的字段。如果为这些变量声明一个记录类型,那么他们之间的关系就十分明显,可作为一个单元进行处理。
/*Define a record type to hold common student informationi*/
TYPE t_StudentRecord IS RECORD(
/*Declare a variable of this type.*/
v_StudentInfo t_StudentRecord;
可以用SELECT语句向记录赋值,这将会从数据库中检索数据并将该数据存储到记录中。注意的是,记录中字段应该和查询结果列表中的字段相匹配。
SELECT studentID,firstName,lastName
from students where studentID=32;
在PL/SQL中将一个记录声明为具有相同类型的数据库行的作法是很常见的。PL/SQL提供了%ROWTYPE运算符,使得这样的操作更为方便。
将定义一个记录,该记录中的字段将与rooms表中的列相对应
二、extjs 如何把一个record中的值传入一个store中
1、看下api,store或者其他继承者,有add方法可用
2、add(Ext.data.Record[]records):void
3、向Store中添加记录并触发add事件。如需通过一个远程数据源向Store中添加记录,请使用...
4、向Store中添加记录并触发add事件。如需通过一个远程数据源向Store中添加记录,请使用load({add:true})。另请参见recordType和insert。
5、需要添加到缓存中的一个Ext.data.Record对象数组。参见recordType。
6、void
写ext程序必备api。很多你想实现的都在api中有。
7、写ext程序必备api。很多你想实现的都在api中有。
三、关于ADO中的record对象与stream对象
给你个地址,你下载下来看看,好了给分,不好不要分:
http://www.52z.com/Down/21209.html
说明:取消执行挂起的异步 Execute或 Open方法的调用。
Object.CopyTo(destStream,[CharNumber])
说明:将对像的数据复制,destStream指向要复制的对像,CharNumber为可选参数,指要复制的字节数,不选为全部复制。
Object.LoadFromFile(FileName)
说明:将FileName指定的文档装入对像中,参数FileName为指定的用户名。
Object.Open(Source,[Mode],[Options],[UserName],[Password])
参数说明:Sourece对像源,可不指定
Mode指定打开模式,可不指定,可选参数如下:
Options指定打开的选项,可不指定,可选参数如下:
UserName指定用户名,可不指定。
说明:读取指定长度的二进制内容。
参数说明:Numbytes指定的要读取的找度,不指定则读取全部。
参数说明:NumChars指定的要读取的找度,不指定则读取全部。
Object.SaveToFile(FileName,[Options])
说明:将对像的内容写到FileName指定的文档中
Options存取的选项,可不指定,可选参数如下:
说明:将指定的数据装入对像中。
参数说明:Buffer为指定的要写入的内容。
说明:将指定的文本数据装入对像中。
参数说明:Data为指定的要写入的内容。
Options写入的选项,可不指定,可选参数如下:
LineSeparator指定换行格式,可选参数有
Position指定或返加对像内数据的当前指针。
Type指定或返回的数据类型,可选参数为:
对所有适用的对象,指示该对象状态是打开的还是关闭的。
指示对所有可应用的对象执行异步方法,指示对象的当前状态是正在连接、正在执行还是正在检索。
返回可能是 ObjectStateEnum值的 Long值。默认值为 adStateClosed。
可以随时用 State属性确定给定对象的当前状态。
对象的 State属性可以是值的组合。例如,如果正在执行某个语句,此属性将有一个 adStateOpen和 adStateExecuting的组合值。
表示 Recordset中的行,或者文件系统中的文件或目录。
通过 Record对象上的 Fields集合,可以查看与 Record对象相关联的字段。ADO允许值为对象的列,包括 Recordset、SafeArray和 Record对象的 Fields集合中的标量值。
如果 Record对象表示 Recordset中的行,那么它有可能返回原先的 Recordset。
Record对象可以模仿树状结构的名称空间。树上的每一个节点都是一个具有相关列的 Record对象。这些列可以表示该节点的属性和其他相关信息。在该树状结构中,Record对象既可以表示叶节点也可表示非叶节点。非叶节点可将其他节点作为内容,而叶节点没有这样的内容。通常,叶节点包含数据的二进制流,而非叶节点也可能有与其相关联的默认二进制流。Record对象的属性标识节点的类型。
Record对象还表示用于定位分级结构数据的替换方法。可以创建一个 Record对象来表示大的树状结构中特定子树的根。可以打开新的 Record对象,用它们表示子节点。
文件或目录(即“资源”)由绝对 URL唯一标识。当用绝对 URL打开 Record时,将显式地创建 Connection对象并将其设置为 Record对象。通过 ActiveConnection属性可以将 Connection对象显式设置为 Record对象。可通过 Connection对象访问的文件和目录定义可在其中发生 Record操作的“上下文”。
Record对象上的数据修改和定位方法还接受相对 URL,它使用绝对 URL或 Connection对象上下文为起点定位资源。
Connection对象与每一个 Record对象相关联。因此,通过调用 Connection对象事务方法,可将 Record对象操作看作事务的一部分。
Record对象不支持 ADO事件,因此不响应通知。
用 Record对象的方法和属性可以执行下列操作:
用 ActiveConnection属性设置或返回相关联的 Connection对象。
用 ParentURL属性返回目录的 URL(如果有),该目录中包含 Record表示的资源。
用 Source属性指示绝对 URL、相对 URL或可从中导出 Record的 Recordset。
用 State属性指示 Record的当前状态。
用 RecordType属性指示 Record类型——简单文档、集合文档或结构化文档。
用 Cancel方法终止执行异步操作。
用 Close方法断开 Record与数据源的关联。
用 CopyRecord方法将 Record表示的文件或目录复制到另一位置。
用 DeleteRecord方法删除 Record表示的文件或目录(及其子目录)。
用 GetChildren方法打开包含行的 Recordset,这些行表示项目的子目录和文件,项目由 Record表示。
用 MoveRecord方法将由 Record表示的文件或目录(及其子目录)移动到另一位置,或者将其重命名。
用 Open方法将 Record与现有的数据源相关联,或者创建一个新文件或目录。
指示在 Connection、Record或 Stream对象中修改数据的有效权限。
设置或返回 ConnectModeEnum值。对于 Connection,默认值为 adModeUnknown。对于 Record对象,默认值为 adModeRead。对于与基本源相关联的 Stream(用 URL将其作为源打开或者作为 Record的默认 Stream打开),默认值为 adReadOnly。对于与基本源不关联的 Stream(在内存中实例化),默认值为 adModeUnknown。
使用 Mode属性设置或返回当前连接上提供者使用的访问权限。只有当 Connection对象关闭时,才能设置 Mode属性。
对于 Stream对象,如果未指定访问模式,它将从用于打开 Stream对象的源继承。例如,如果 Stream是从 Record对象打开的,默认情况下它将以打开 Record对象相同的模式打开。
此属性在对象关闭时为读/写,在对象打开时为只读。
远程数据服务用法当在客户端的 Connection对象上使用时,Mode属性只能设置为 adModeUnknown。
指示指向当前 Record对象的父 Record的绝对 URL字符串。
返回 String值,指示父 Record的 URL。
ParentURL属性依赖于用于打开 Record对象的源。例如,可以用包含 ActiveConnection属性所引用的目录的相关路径名的源打开 Record。
假设“second”是包含在“first”中的文件夹。用下列代码打开 Record对象:
record.ActiveConnection="http://first"
现在,ParentURL属性的值为“http://first”,与 ActiveConnection的值相同。
源也可以是一个绝对 URL,如“http://first/second”。ParentURL属性的值则为“http://first”,它是“second”的上一层。
在下列情况下,此属性为 Null值:
当前对象没有父对象。例如,如果 Record对象表示目录的根。
Record对象表示不能用 URL指定的项目。例如,源于数据库的 Recordset的行。
注意此属性只受文档的源提供者(如 Microsoft OLE DB Provider for Internet Publishing)支持。
设置或返回 Variant值,指示由 Record表示的项目。
Source属性返回 Record对象 Open方法的 Source参数。它可包含绝对或相对 URL字符串。可用绝对 URL直接打开 Record对象而无须设置 ActiveConnection属性。在这种情况下,将创建隐式的 Connection对象。
Source属性也可以包含对已打开的 Recordset的引用,该 Recordset打开表示 Recordset中的当前行的 Record对象。
如果还设置了 ActiveConnection属性,则 Source属性必须指向存在于该连接范围内的某个对象。例如,在树状结构的名称空间中,如果 Source属性包含绝对 URL,它必须指向节点范围内的节点,该节点范围由连接字符串中的 URL标识。如果 Source属性包含相对 URL,则它在由 ActiveConnection属性设置的上下文中有效。
Source属性在 Record对象关闭时为读/写,在 Record对象打开时为只读。
对所有适用的对象,指示该对象状态是打开的还是关闭的。
指示对所有可应用的对象执行异步方法,指示对象的当前状态是正在连接、正在执行还是正在检索。
返回可能是 ObjectStateEnum值的 Long值。默认值为 adStateClosed。
可以随时用 State属性确定给定对象的当前状态。
对象的 State属性可以是值的组合。例如,如果正在执行某个语句,此属性将有一个 adStateOpen和 adStateExecuting的组合值。
使用 Cancel方法终止执行异步方法调用(即用 adAsyncConnect、adAsyncExecute或 adAsyncFetch选项调用的方法)。
下表显示使用特定类型对象的 Cancel方法时将终止的任务。
如果 object是终止对此方法的上一次异步调用
Record CopyRecord、DeleteRecord、MoveRecord或 Open
关闭打开的对象和任何相关的对象。
使用 Close方法关闭 Connection、Record、Recordset或 Stream对象以便释放任何相关联的系统资源。关闭对象不会将其从内存中删除;随后可以更改其属性设置并再次将其打开。要从内存中彻底清除对象,请在关闭对象后将对象变量设置为 Nothing(在 Visual Basic中)。
使用 Close方法关闭 Connection对象还将关闭与连接相关联的任何活动 Recordset对象。与正在关闭的 Connection对象相关联的 Command对象将被持久保留,但不再与 Connection对象相关联,即其 ActiveConnection属性将被设置为 Nothing。还将从 Command对象的 Parameters集合中清除任何提供者定义的参数。
随后可以调用 Open方法重新建立与相同数据源或其他数据源的连接。在 Connection对象关闭后,调用任何需要与数据源打开连接的方法都将产生错误。
当连接上的 Recordset对象打开时,关闭 Connection对象将回卷所有 Recordset对象中的挂起更改。在事务进行过程中显式关闭 Connection对象(调用 Close方法)将产生错误。如果在事务进行过程中 Connection对象超出范围,ADO将自动回卷事务。
使用 Close方法关闭 Recordset、Record或 Stream对象将释放相关联的数据和可能通过此特定对象对数据进行的独立访问。随后可以调用 Open方法重新打开具有相同属性或修改属性的对象。
在 Recordset对象关闭后,调用任何需要活动游标的方法都将产生错误。
如果在立即更新模式下进行编辑,调用 Close方法将产生错误,应先调用 Update或 CancelUpdate方法。如果在批更新模式下关闭 Recordset对象,自上次 UpdateBatch调用以来所做的更改将全部丢失。
如果使用 Clone方法创建打开的 Recordset对象的副本,关闭原 Recordset或其副本不会影响任何其他副本。
把文件或目录(及其内容)复制到另一个位置。
CopyRecord(Source, Destination, UserName, Password, Options, Async)
Source可选。String值,包含指定要复制的文件或目录的 URL。如果省略 Source或指定空字符串,将复制此 Record所表示的文件或目录。
Destination可选。String值,包含指定要复制 Source的位置的 URL。
UserName可选。String值,包含授权访问 Destination(如果需要)的用户 ID。
Password可选。String值,包含验证 UserName(如果需要)的密码。
Options可选。CopyRecordOptionsEnum值,其默认值为 adCopyUnspecified。指定此方法的行为。
Async可选。Boolean值,其值为 True时指定此操作为异步。
String值,通常返回 Destination的值。然而,返回的准确值要取决于提供者。
Source和 Destination的值必须相同,否则将发生运行时错误。服务器、路径或资源的名称至少有一个不同。
除非指定 adCopyNonRecursive,否则将递归复制 Source的所有子目录。在递归操作中,Destination不能是 Source的子目录,否则操作将不能完成。
如果 Destination标识现有文件或目录,除非指定 adCopyOverWrite,否则此方法将失败。
重要信息请斟酌使用 adMoveOverWrite选项。例如,将一个文件复制到某个目录时,指定此选项将“删除”这个目录,并用此文件替换它。
删除文件或目录(包括目录中的所有子目录)。
Source可选。String值,包含标识要删除的文件或目录的 URL。如果省略 Source或指定空字符串,此 Record表示的文件或目录将被删除。
Async可选。Boolean值,其值为 True时将指定删除操作为异步。
此方法完成后,对由 Record表示的文件或目录执行的操作可能失败。在调用 DeleteRecord后,根据 Provider用数据源更新 Record的时间不同,Record的行为可能不可预料,因此应将 Record关闭。
如果此 Record从 Recordset获取,那么在 Recordset中将不会立即反映此操作的结果。关闭并重新打开 Recordset,或者执行 Recordset Requery或 Update和 Resync方法,将刷新 Recordset。
返回 Recordset,其中的行表示由此 Record表示的目录中的文件和子目录。
Set recordset= record.GetChildren
Recordset对象,其中的每一行表示一个文件或目录。
提供者确定在返回的 Recordset中包含哪些列。例如,文档源提供者始终返回资源 Recordset。
把文件或目录(及其内容)移到另一个位置。
MoveRecord(Source, Destination, UserName, Password, Options, Async)
Source可选。String值,包含标识要移动的 Record的 URL。如果省略 Source或指定空字符串,将移动此 Record表示的文件或目录。
Destination可选。String值,包含指定要移动的 Source的位置的 URL。
UserName可选。String值,包含授权访问 Destination(如果需要)的用户 ID。
Password可选。String,包含验证 UserName(如果需要)的密码。
Options可选。MoveRecordOptionsEnum值,其默认值为 adMoveUnspecified。指定此方法的行为。
Async可选。Boolean值,其值为 True时将指定此操作为异步。
String值。通常返回 Destination值。然而,返回的准确值要取决于提供者。
Source和 Destination的值必须相同,否则将发生运行时错误。至少服务器、路径和资源的名称不能相同。
此方法将更新正被移动的文件中的所有超文本链接(除 Options指定的以外)。如果 Destination标识现有的文件或目录,除非指定 adMoveOverWrite,否则此方法将失败。
注意请斟酌使用 adMoveOverWrite选项。例如,把一个文件移动到某个目录中,指定此选项将删除这个目录并用此文件替换它。
此操作完成后,Record对象的某些属性(如 ParentURL属性)将不会被更新。关闭 Record然后用文件或目录移动位置的 URL重新打开它,即可刷新 Record对象的属性。
如果此 Record是从 Recordset获取的,移动的文件或目录的新位置将不会立即反映在 Recordset中。关闭并重新打开将刷新 Recordset。
关于recordtype和recordtype怎么声明的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。