See Also

Blob Members  | RedGate.SQLDataCompare.Engine Namespace

Requirements

Namespace: RedGate.SQLDataCompare.Engine

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

Assembly: RedGate.SQLDataCompare.Engine (in RedGate.SQLDataCompare.Engine.dll)

Language

Visual Basic

C#

C++

C++/CLI

Show All

See Also Requirements Languages RedGate.SQLDataCompare.Engine Send comments on this topic.

Blob Class

RedGate.SQLDataCompare.Engine Namespace : Blob Class

Wrapper class for a byte array.

For a list of all members of this type, see Blob members.

Inheritance Hierarchy

System.Object
   RedGate.SQLDataCompare.Engine.Blob
      RedGate.SQLDataCompare.Engine.CLR

Syntax

[Visual Basic]
Public Class Blob
[C#]
public class Blob
[C++]
public __gc class Blob
[C++/CLI]
public ref class Blob

Remarks

The Blob object is used internally by SQL Data Compare to represent a byte array. Use the ByteArray property to access the underlying data.

Example

[C#] 

using System; 
using RedGate.SQLCompare.Engine; 
using RedGate.SQLDataCompare.Engine; 
using RedGate.SQLDataCompare.Engine.ResultsStore; 
  
namespace SQLDataCompareCodeSnippets 

    public class BlobExample 
    { 
        public void RunExample() 
        { 
            Database db1=new Database(); 
            Database db2=new Database(); 
  
            // Register the databases 
            db1.RegisterForDataCompare(new ConnectionProperties(".", "WidgetDev")); 
            db2.RegisterForDataCompare(new ConnectionProperties(".", "WidgetLive")); 
  
            using (ComparisonSession session = new ComparisonSession()) 
            { 
                // Create the schema mappings used to compare the database 
                SchemaMappings mappings = new SchemaMappings(); 
                mappings.CreateMappings(db1, db2); 
  
                session.CompareDatabases(db1, db2, mappings); 
  
                // Get the reader for the different rows in the results 
                Reader different=session.TableDifferences["[dbo].[WidgetDescriptions]"].ResultsStore.GetReader(Row.RowType.Different); 
  
                // get the first row in the ResultsStore Reader for the different rows. 
  
                Row currentRow=different.GetRow(0); 
  
                //field1 and field2 contain the position of the two BLOBs in the ResultsStore 
                int field1 = different.Fields["Picture"].OrdinalInResults1; 
                int field2 = different.Fields["Picture"].OrdinalInResults2; 
  
                Blob blob1=(Blob)currentRow.Values[field1]; 
                Blob blob2=(Blob)currentRow.Values[field2]; 
  
                // Output the first 20 bytes 
                for (int i=0; i<20; i++) 
                { 
                    Console.Write("{0:X} ", blob1.ByteArray[i]); 
                } 
                Console.WriteLine(); 
     
                // Output the first 20 bytes 
                for (int i=0; i<20; i++) 
                { 
                    Console.Write("{0:X} ", blob2.ByteArray[i]); 
                } 
                Console.WriteLine(); 
            } 
            db1.Dispose(); 
            db2.Dispose(); 
        } 
    } 

    

[Visual Basic] 

Option Explicit On

Imports RedGate.SQLCompare.Engine
Imports RedGate.SQLDataCompare.Engine
Imports RedGate.SQLDataCompare.Engine.ResultsStore

Class BlobExample
    Sub RunExample()
        Dim session As New ComparisonSession

        'register the databases for comparison
        Dim db1 As New Database
        Dim db2 As New Database

        db1.RegisterForDataCompare(New ConnectionProperties(".", "WidgetDev"))
        db2.RegisterForDataCompare(New ConnectionProperties(".", "WidgetLive"))

        'create the schema mappings used to compare the database
        Dim mappings As New SchemaMappings
        mappings.CreateMappings(db1, db2)

        'compare the databases
        session.CompareDatabases(db1, db2, mappings)

        Dim different As Reader = session.TableDifferences("[dbo].[WidgetDescriptions]").ResultsStore.GetReader(Row.RowType.Different)

        'work out the two positions in the fields
        Dim field1 As Integer = different.Fields("Picture").OrdinalInResults1
        Dim field2 As Integer = different.Fields("Picture").OrdinalInResults2

        'get the first row in the ResultsStore
        Dim currentRow As Row = different.GetRow(0)

        'field1 and field2 contain the position of the two BLOBs in the ResultsStore
        Dim blob1 As Blob = currentRow.Values(field1)
        Dim blob2 As Blob = currentRow.Values(field2)

        Dim i As Integer

        For i = 0 To 20
            Console.Write("{0:X} ", blob1.ByteArray(i))
        Next
        Console.WriteLine()

        For i = 0 To 20
            Console.Write("{0:X} ", blob2.ByteArray(i))
        Next
        Console.WriteLine()

        'dispose of the objects to delete temporary files
        session.Dispose()
        db1.Dispose()
        db2.Dispose()
    End Sub
End Class

Requirements

Namespace: RedGate.SQLDataCompare.Engine

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

Assembly: RedGate.SQLDataCompare.Engine (in RedGate.SQLDataCompare.Engine.dll)

See Also

Blob Members  | RedGate.SQLDataCompare.Engine Namespace

 

 


© 2003 - 2006 Red Gate Software Ltd. All Rights Reserved.