Export (0) Print
Expand All

Variable.DataType Property

Returns a TypeCode enumeration that describes the data type of the variable. This property is read-only.

Namespace: Microsoft.SqlServer.Dts.Runtime
Assembly: Microsoft.SqlServer.ManagedDTS (in microsoft.sqlserver.manageddts.dll)

[BrowsableAttribute(false)] 
public TypeCode DataType { get; }
/** @property */
public TypeCode get_DataType ()

public function get DataType () : TypeCode

Property Value

A TypeCode enumeration that represents the data type of the variable.

The DataType of a variable is not set explicitly, but is inferred from the initial value assigned to the variable, and cannot be changed afterward.


The following example creates a package, adds a ForEachLoop, and adds a variable to the Variables collection of the ForEachLoop. It then retrieves and sets properties on the variable and displays them for viewing, including the DataType.

static void Main(string[] args)
        {
            Package p = new Package();
            // Add a sequence to the package executables collection
            Sequence seq = (Sequence)p.Executables.Add("STOCK:SEQUENCE");
            // Add a ForEachLoop to the Sequence
            ForEachLoop feLoop = (ForEachLoop)seq.Executables.Add("STOCK:FOREACHLOOP");

            // Add a variable, v, to the variable collection
           // of the ForEach loop.
            Variable v = feLoop.Variables.Add("v", false, "global", 100);

//  Get and set different variable properties

            // Creation Name (read-only)
            String createName = v.CreationName;

            // Description (read/write)
            v.Description = "my new v Description";
            String vDesc = v.Description;

            // ID (read-only)
            String vID = v.ID;

            // Name (read/write)
            String oldName = v.Name;
            v.Name = "my_new_V_name";
            String newName = v.Name;

            // Namespace (read/write)
            String oldNamespace = v.Namespace;
            v.Namespace = "my_new_v_Namespace";
            String newNamespace = v.Namespace;

            // Properties (read-only)
            int pmCount = v.Properties.Count;

            // Qualified Name (read-only)
            String QName = v.QualifiedName;
           
            // RaiseChangedEvent (read/write)
            Boolean oldraiseChEvt = v.RaiseChangedEvent;
            v.RaiseChangedEvent = true;
            Boolean raiseChangedEvent = v.RaiseChangedEvent;

            // Read-only (read/write)
            Boolean vReadOnly = v.ReadOnly;
            v.ReadOnly = true;
            Boolean newVReadOnly = v.ReadOnly;

            // System Variable (read-only)
            Boolean sysVar = v.SystemVariable;

            // Type (read-only)
            TypeCode type = v.DataType;

            // Value (read/write)
            Object vValue = v.Value;
           
            Console.WriteLine("The variable properties are: ");
            Console.WriteLine("Creation Name   = {0}", createName);
            Console.WriteLine("Description        = {0}", vDesc);
            Console.WriteLine("ID                     = {0}", vID);
            Console.WriteLine("Old name, new name = {0}, {1}", oldName, newName);
            Console.WriteLine("Old namespace, new namespace = {0}, {1}", oldNamespace, newNamespace);
            Console.WriteLine("Properties count   = {0}", pmCount);
            Console.WriteLine("Qualified Name     = {0}", QName);
            Console.WriteLine("old RaiseEvent, new RaiseEvent = {0}, {1}", oldraiseChEvt, raiseChangedEvent);
            Console.WriteLine("old read-only, new read-only = {0}, {1}", vReadOnly, newVReadOnly);
            Console.WriteLine("System Variable    = {0}", sysVar);
            Console.WriteLine("Type               = {0}", type);
        }

Sample Output:

The variable properties are:

Creation Name =

Description = my new v Description

ID = {622CF328-55D7-4E81-9385-9C1F8450511E}

Old name, new name = v, my_new_V_name

Old namespace, new namespace = global, my_new_v_Namespace

Properties count = 12

Qualified Name = my_new_v_Namespace::my_new_V_name

old RaiseEvent, new RaiseEvent = False, True

old read-only, new read-only = False, True

System Variable = False

Type = Int32

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Development Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

Target Platforms

Community Additions

ADD
Show:
© 2014 Microsoft