| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- #pragma once
- #define ERROR_OPENING_DATABASE -2
- #pragma warning(disable : 4995)
- class COpenAccessdatabase
- {
- public:
- COpenAccessdatabase(void);
- ~COpenAccessdatabase(void);
- BOOL ValidDB(CString csPath, BOOL bUpgrade);
- };
- class CDaoTableDefEx : public CDaoTableDef
- {
- public:
- CDaoTableDefEx(CDaoDatabase* pDatabase)
- :CDaoTableDef(pDatabase)
- {
- }
- BOOL CreateIndex(BOOL bPrimaryKey, CString csField)
- {
- try
- {
- CDaoIndexInfo IndexInfo;
- CDaoIndexFieldInfo IndexFieldInfo[1];
- IndexFieldInfo[0].m_strName = csField;
- IndexFieldInfo[0].m_bDescending = TRUE;
- IndexInfo.m_strName = csField;
- IndexInfo.m_pFieldInfos = IndexFieldInfo;
- IndexInfo.m_nFields = 1;
- IndexInfo.m_bPrimary = bPrimaryKey;
- IndexInfo.m_bUnique = FALSE;
- IndexInfo.m_bIgnoreNulls = FALSE;
- IndexInfo.m_bRequired = FALSE;
- CDaoTableDef::CreateIndex( IndexInfo );
- }
- catch(CDaoException *e)
- {
- ASSERT(FALSE);
- e->Delete();
- return FALSE;
- }
- return TRUE;
- }
- BOOL CreateField(LPCTSTR lpszName, short nType, long lSize, long lAttributes = 0, CString csDefault = _T(""))
- {
- try
- {
- CDaoFieldInfo fieldinfo;
- // Initialize everything so only correct properties will be set
- fieldinfo.m_strName = lpszName;
- fieldinfo.m_nType = nType;
- fieldinfo.m_lSize = lSize;
- fieldinfo.m_lAttributes = lAttributes;
- fieldinfo.m_nOrdinalPosition = 0;
- fieldinfo.m_bRequired = FALSE;
- fieldinfo.m_bAllowZeroLength = FALSE;
- fieldinfo.m_lCollatingOrder = 0;
- fieldinfo.m_strDefaultValue = csDefault;
- CDaoTableDef::CreateField(fieldinfo);
- return TRUE;
- }
- catch(CDaoException *e)
- {
- e->Delete();
- ASSERT(FALSE);
- }
- return FALSE;
- }
- };
|