ArcObjects Library Reference  (GeoDatabase)    

ISQLSyntax.ParseColumnName Method

Given a column name, determine its qualification parts.

[Visual Basic 6.0]
Sub ParseColumnName(
    ByVal FullName As String, _
    dbName As String, _
    ownerName As String, _
    TableName As String, _
    columnName As String _
)
[Visual Basic .NET]
Public Sub ParseColumnName ( _
    ByVal FullName As String, _
    ByRef dbName As String, _
    ByRef ownerName As String, _
    ByRef TableName As String, _
    ByRef columnName As String _
)
[C#]
public void ParseColumnName (
    string FullName,
    ref string dbName,
    ref string ownerName,
    ref string TableName,
    ref string columnName
);
[Java]
public void parseColumnName (
    String FullName,
    String dbName,
    String ownerName,
    String TableName,
    String columnName
)
throws
    IOException,
    AutomationException
[C++]
HRESULT ParseColumnName(
  BSTR FullName,
  BSTR* dbName,
  BSTR* ownerName,
  BSTR* TableName,
  BSTR* columnName
);
[C++]

Parameters

FullName [in]

  FullName is a parameter of type BSTR

dbName [out]

  dbName is a parameter of type BSTR

ownerName [out]

  ownerName is a parameter of type BSTR

TableName [out]

  TableName is a parameter of type BSTR

columnName [out]

  columnName is a parameter of type BSTR

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Remarks

Applications should use the ParseColumnName method to split the fully qualified name for a column in a table into its components (database, owner, table, column).

Applications that wish to be RDBMS independent should not assume that . is the delimiter used to separate the components of a fully qualified dataset name. Use the QualifyColumnName method to determine the qualified name of a column of a table for a given workspace.

The FullName paramter can be returned from the IDataset::Name property for a dataset in a Geodatabase and the IDatasetName::Name property for a dataset name object. Both methods return the fully qualified name for the dataset (the name object for the dataset is itself obtained using the IDataset::FullName property).

Empty strings will be returned for arguments that do not apply to the underlying DBMS. For example, supplying a FullName parameter of "gdb.Greeley_Parcels_1.AREA" to an ArcSDE Geodatabase on Oracle will result in:

dbName = ""

ownerName = "gdb"

TableName = "Greeley_Parcels_1"

columnName = "AREA"

[C#]

    // e.g., fieldName = field.Name;
    //       fieldName = "sde.Greeley_Parcels_1.AREA"
    public void ISQLSyntax__ParseColumnName(IWorkspace workspace,string fieldName)
    {  
        string nameOfDatabase;
        string nameOfOwner;
        string nameOfTable;
        string nameOfColumn;

        ISQLSyntax sqlSyntax = (ISQLSyntax)workspace;
        sqlSyntax.ParseColumnName(fieldName, out nameOfDatabase, out nameOfOwner, out nameOfTable, out nameOfColumn);

        Console.WriteLine("The database name is {0}", nameOfDatabase);
        Console.WriteLine("The owner name is {0}", nameOfOwner);
        Console.WriteLine("The table name is {0}", nameOfTable);
        Console.WriteLine("The column name is {0}", nameOfColumn);
    }

[Visual Basic 6.0]

'Assume we already have a reference to the workspace as pWor
Dim pSQLSyntax As ISQLSyntax
Dim strFullName As String, strDB As String, strOwner As String, strTable As String, strCol As String
strFullName = "GDB.Greeley_Parcels_1.AREA"

Set pSQLSyntax = pWor
pSQLSyntax.ParseColumnName strFullName, strDB, strOwner, strTable, strCol
Debug.Print strDB
Debug.Print strOwner
Debug.Print strTable
Debug.Print strCol

See Also

ISQLSyntax Interface