ADO 2.7 Samples

Clone Method Example (VBScript)

This example uses the Clone method to create copies of a Recordset and then lets the user position the record pointer of each copy independently.

Use the following example in an Active Server Page (ASP). This example uses the Northwind database distributed with Microsoft Access. Cut and paste the following code to Notepad or another text editor and save it as CloneVBS.asp. You can view the result in any client browser.

To exercise the example, change the line RsCustomerList.Source = "Customers" to RsCustomerList.Source = "Products" to count a larger table.

<!-- BeginCloneVBS -->
<% Language = VBScript %>
<%' use this meta tag instead of adovbs.inc%>
<!--METADATA TYPE="typelib" uuid="00000205-0000-0010-8000-00AA006D2EA4" -->
<HTML>
<HEAD>
<TITLE>ADO Clone Method</TITLE>
</HEAD>

<BODY>

<H1 align="center">ADO Clone Method</H1>
<HR>
<HR>
<% ' to integrate/test this code replace the 
   ' Data Source value in the Connection string%>
<% 
   ' connection and recordset variables
   Dim Cnxn, strCnxn
   Dim rsCustomers, strSQLCustomers
   Dim rsFirst, rsLast, rsCount
   Dim rsClone
   Dim CloneFirst, CloneLast, CloneCount

   ' open connection
    Set Cnxn = Server.CreateObject("ADODB.Connection")
    strCnxn = "Provider=sqloledb;Data Source=MyServer;Initial Catalog=northwind;User Id=sa;Password=;"
    Cnxn.Open strCnxn
      
    ' create and open Recordset using object refs
   Set rsCustomers = Server.CreateObject("ADODB.Recordset")
   strSQLCustomers = "Customers"
   
   rsCustomers.ActiveConnection = Cnxn
   rsCustomers.CursorLocation = adUseClient
   rsCustomers.CursorType = adOpenKeyset
   rsCustomers.LockType = adLockOptimistic
   rsCustomers.Source = strSQLCustomers
   rsCustomers.Open

   rsCustomers.MoveFirst
   rsCount = rsCustomers.RecordCount
   rsFirst = rsCustomers("CompanyName")
   rsCustomers.MoveLast
   rsLast = rsCustomers("CompanyName")

   ' create clone
   Set rsClone = rsCustomers.Clone
   rsClone.MoveFirst
   CloneCount = rsClone.RecordCount
   CloneFirst = rsClone("CompanyName")
   rsClone.MoveLast
   CloneLast = rsClone("CompanyName")
%>

<!-- Display Results -->
<H3>There Are <%=rsCount%> Records in the original recordset</H3>
<H3>The first record is <%=rsFirst%> and the last record is <%=rsLast%></H3>
<BR><HR>
<H3>There Are <%=CloneCount%> Records in the original recordset</H3>
<H3>The first record is <%=CloneFirst%> and the last record is <%=CloneLast%></H3>
<BR><HR>
<H4>Location of OLEDB Database</H4>

<%
   ' Show location of DSN data source
   Response.Write(Cnxn)
%>
</BODY>
</HTML>
<!-- EndCloneVBS -->

See Also

Clone Method | Recordset Object

© 1998-2001 Microsoft Corporation. All rights reserved.