SOL9 2.0 Class: ADOXProperty

 SOL9 C++ Class Library  SOL9 Samples  SOL9 Tutorial  SOL9 FAQ  SOL9 ClassTree 

Source code

/*
 * ADOXProperty.h 
 * Copyright (c) 2009 Antillia.com TOSHIYUKI ARAI. ALL RIGHTS RESERVED. 
 */


// SOL9
// 2009/06/04

#pragma once

#include <sol/sql/ADOObject.h>

namespace SOL {

class ADOXProperty :public ADOObject {

public:
    ADOXProperty()
    {
    }

public:
    HRESULT createInstance()
    {
        return ADOObject::createInstance(__uuidof(ADOX::Property));
    }

public:
    void set(__in ADOX::PropertyPtr pP) 
    {
        setObject((IDispatchPtr)pP);
    }

public:
    ADOX::PropertyPtr getPropertyPtr() 
    {
        return (ADOX::PropertyPtr)getObject();
    }

public:
    _variant_t getValue()
    {
        return getPropertyPtr()->GetValue();
    }

public:
    void putValue(const _variant_t& pVal)
    {
        getPropertyPtr()->PutValue(pVal);
    }

public:
    _bstr_t getName()
    {
        return getPropertyPtr()->GetName();
    }
public:

    ADOX::DataTypeEnum getType()
    {
        return getPropertyPtr()-> GetType();
    }

public:
    long getAttributes()
    {
        return getPropertyPtr()->GetAttributes();
    }

public:

    void putAttributes(long plAttributes)
    {
        getPropertyPtr()->PutAttributes(plAttributes);
    }

public:
    void dump()
    {

        _bstr_t name = getName();
        ADOXEnumNames names;
        const char* type = names.getName(getType());
        printf("<Property Name=\"%s\" Type=\"%s\" />\n", 
            (const char*)name,
            type);
    }
};

}

Last modified: 19 Dec 2009

Copyright (c) 2009 Antillia.com ALL RIGHTS RESERVED.