亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? createdbdlg.cpp

?? windows ce開(kāi)發(fā)技巧與實(shí)例光盤代碼
?? CPP
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
// CreateDBDlg.cpp : implementation file
//

#include "stdafx.h"
#include "CreateDB.h"
#include "CreateDBDlg.h"


#include "voconnection.h"
#include "vorecordset.h"


#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif


extern CVOConnection	g_Conn;

/////////////////////////////////////////////////////////////////////////////
// CCreateDBDlg dialog

CCreateDBDlg::CCreateDBDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CCreateDBDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CCreateDBDlg)
	m_szFileName = _T("My Documents\\InsureEase.cdb");
	m_szTable = _T("");
	m_iOperation = 0;
	//}}AFX_DATA_INIT
	// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CCreateDBDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CCreateDBDlg)
	DDX_Control(pDX, IDC_COMBO_TABLE, m_comboTableCtrl);
	DDX_Control(pDX, IDC_LIST, m_listCtrl);
	DDX_Text(pDX, IDC_EDIT_FILENAME, m_szFileName);
	DDX_CBString(pDX, IDC_COMBO_TABLE, m_szTable);
	DDX_CBIndex(pDX, IDC_COMBO_OPERATION, m_iOperation);
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CCreateDBDlg, CDialog)
	//{{AFX_MSG_MAP(CCreateDBDlg)
	ON_BN_CLICKED(IDC_BTN_CREATE, OnBtnCreate)
	ON_CBN_CLOSEUP(IDC_COMBO_OPERATION, OnCloseupComboOperation)
	ON_BN_CLICKED(IDC_BTN_BEGIN, OnBtnBegin)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CCreateDBDlg message handlers

BOOL CCreateDBDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// Set the icon for this dialog.  The framework does this automatically
	//  when the application's main window is not a dialog
	SetIcon(m_hIcon, TRUE);			// Set big icon
	SetIcon(m_hIcon, FALSE);		// Set small icon
	
	CenterWindow(GetDesktopWindow());	// center to the hpc screen

	LoadTableList2Comb(_T("My Documents\\XML\\TableList.xml"));
	m_comboTableCtrl.EnableWindow(FALSE);
	
	return TRUE;  // return TRUE  unless you set the focus to a control
}



void CCreateDBDlg::OnBtnCreate() 
{
	m_listCtrl.ResetContent();
	
	UpdateData(TRUE);

	if( IsExistDB(m_szFileName) )
	{
		//It is important
		g_Conn.SetConnectDB(m_szFileName);

		m_listCtrl.AddString(_T("DB exist."));
		UpdateData(FALSE);
		
		DropTables(_T("My Documents\\XML\\TableList.xml"));

		m_listCtrl.AddString(_T("Drop tables."));
		UpdateData(FALSE);
	}
	else
	{
		if( CreateCDB(m_szFileName) )
		{
			m_listCtrl.AddString(_T("Create CDB."));
			UpdateData(FALSE);

			//It is important
			g_Conn.SetConnectDB(m_szFileName);
		}
		else
		{
			AfxMessageBox(_T("Create DB Error."));
			return;
		}
	}
	
	CreateTables(_T("My Documents\\XML\\CreateTables.xml"));
	
	m_listCtrl.AddString(_T("Create tables."));
	UpdateData(FALSE);

	InsertData();

	m_listCtrl.AddString(_T("Insert data."));
	UpdateData(FALSE);

}

BOOL CCreateDBDlg::IsExistDB(LPCTSTR lpszFileName)
{
	LPWIN32_FIND_DATA pFindFile = new WIN32_FIND_DATA;
	HANDLE hFind = FindFirstFile(lpszFileName,pFindFile);
	if( hFind == INVALID_HANDLE_VALUE ) 
	{
		DELETE_POINTER(pFindFile);
		
		return FALSE;
	}

	FindClose(hFind);
		
	DELETE_POINTER(pFindFile);

	return TRUE;
}

void CCreateDBDlg::DropTables(LPCTSTR lpszFileName)
{
	CString csText;
	CMarkup xml;

	ReadXML2Str(lpszFileName,csText,xml);

	CProgressWnd wndProgress(this, _T("正在刪除表..."),TRUE);
    wndProgress.GoModal();
	wndProgress.SetRange(0,3000);
	long i = 0;

	CVORecordset rsTmp(g_Conn);
	CString szSQL;

	xml.FindElem(_T("TABLELIST"));

	while( xml.FindChildElem(_T("ITEM")) )
	{
		szSQL.Empty();
		
		szSQL.Format(_T("DROP TABLE %s"),xml.GetChildData());

		if( rsTmp.Open(szSQL) )
		{
			wndProgress.SetText(_T("已經(jīng)刪除%d個(gè)表。"),i+1);
			wndProgress.SetPos(i+1);
			wndProgress.PeekAndPump();

			i++;
		}
	}
	
	rsTmp.Close();

	wndProgress.Close();	
}

BOOL CCreateDBDlg::CreateCDB(LPCTSTR lpszFileName)
{	
	g_Conn.ClearConnect();
	
	UpdateData(TRUE);
	CVORecordset rs(g_Conn);
	CString szDB;
	szDB.Format(_T("CREATE DATABASE '%s'"),m_szFileName);
	if( rs.Open ( szDB ) )
	{
		rs.Close ();
	}
	else
	{
		return FALSE;
	}
	
	return TRUE;
}

void CCreateDBDlg::CreateTables(LPCTSTR lpszFileName)
{
	if( IsExistDB(m_szFileName) )
	{
		g_Conn.SetConnectDB(m_szFileName);
	}
	else
	{
		AfxMessageBox(_T("Database is NOT Exist."));
		return;
	}
	
	CString csText;
	CMarkup xml;
	
	ReadXML2Str(lpszFileName,csText,xml);

	CProgressWnd wndProgress(this, _T("正在創(chuàng)建表..."),TRUE);
    wndProgress.GoModal();
	wndProgress.SetRange(0,3000);
	long i = 0;

	CVORecordset rsTmp(g_Conn);
	CString szSQL;

	xml.FindElem(_T("CREATETABLES"));

	while( xml.FindChildElem(_T("ITEM")) )
	{
		szSQL.Empty();
		
		szSQL = xml.GetChildData();

		if( rsTmp.Open(szSQL) )
		{
			wndProgress.SetText(_T("已經(jīng)創(chuàng)建%d個(gè)表。"),i+1);
			wndProgress.SetPos(i+1);
			wndProgress.PeekAndPump();

			i++;
		}
	}
	
	rsTmp.Close();

	wndProgress.Close();	
}

void CCreateDBDlg::InsertData()
{
	CString szText;
	for( int i=0;i<m_comboTableCtrl.GetCount();i++ )
	{
		szText.Empty();
		m_comboTableCtrl.GetLBText(i,szText);

		if( szText == _T("[INSUREDICT]"))
		{
#ifdef _X86_
			m_listCtrl.AddString(_T("INSUREDICT的數(shù)據(jù)超過(guò)了模擬器CDB文件的限制,不能插入。"));
			UpdateData(FALSE);
			//AfxMessageBox(_T("該表內(nèi)的數(shù)據(jù)超過(guò)了模擬器CDB文件的限制,不能插入。"));
#else
			InsertInsureDict2DB(_T("My Documents\\XML\\"));
#endif
		}
		else if( szText == _T("[MARKETTIPS]"))
		{
			InsertMarketTips2DB(_T("My Documents\\XML\\MarketTips.xml"));
		}
		else
		{
			InsertDataFromXML(_T("My Documents\\XML\\"),szText);
		}
	}
}

void CCreateDBDlg::InsertMarketTips2DB(LPCTSTR lpszFileName)
{
	if( IsExistDB(m_szFileName) )
	{
		g_Conn.SetConnectDB(m_szFileName);
	}
	else
	{
		AfxMessageBox(_T("數(shù)據(jù)庫(kù)不存在."));
		return;
	}
	
	CString csText;
	CMarkup xml;

	ReadXML2Str(lpszFileName,csText,xml);

	CProgressWnd wndProgress(this, _T("正在導(dǎo)入錦囊數(shù)據(jù)..."),TRUE);
    wndProgress.GoModal();
	wndProgress.SetRange(0,3000);
	long i = 0;

	CString szID,szParentID,szName,szContent;

	xml.FindElem(_T("營(yíng)銷錦囊"));

	while( xml.FindChildElem(_T("ITEM")) )
	{
		szID.Empty();
		szParentID.Empty();
		szName.Empty();
		szContent.Empty();

		xml.IntoElem();
		xml.FindChildElem(_T("ID"));
		szID = xml.GetChildData();
		//AfxMessageBox(szID);
		xml.FindChildElem(_T("PARENT_ID"));
		szParentID = xml.GetChildData();
		//AfxMessageBox(szParentID);
		xml.FindChildElem(_T("NAME"));
		szName = xml.GetChildData();
		//AfxMessageBox(szName);
		xml.FindChildElem(_T("CONTENT"));
		szContent = xml.GetChildData();
		//AfxMessageBox(szContent);
		
		if( Write2DB(szID,szParentID,szName,szContent,_T("[MARKETTIPS]")) )
		{
			wndProgress.SetText(_T("已經(jīng)導(dǎo)入%d條記錄。"),i+1);
			wndProgress.SetPos(i+1);
			wndProgress.PeekAndPump();

			i++;
		}

		xml.OutOfElem();
	}
	
	wndProgress.Close();
}
void CCreateDBDlg::InsertInsureDict2DB(LPCTSTR lpszFilePath)
{
	if( IsExistDB(m_szFileName) )
	{
		g_Conn.SetConnectDB(m_szFileName);
	}
	else
	{
		AfxMessageBox(_T("數(shù)據(jù)庫(kù)不存在."));
		return;
	}

	int iCount = 0;
	CString szFile;
	CString szFileName;
	CString szFindFile;
	szFindFile.Format(_T("%sInsureDict*.xml"),lpszFilePath);

//	AfxMessageBox(szFindFile);
	
	CProgressWnd wndProgress(this, _T("正在導(dǎo)入詞典數(shù)據(jù)..."),TRUE);
    wndProgress.GoModal();
	wndProgress.SetRange(0,3000);

	LPWIN32_FIND_DATA pFindFile = new WIN32_FIND_DATA;
	HANDLE hFind = FindFirstFile(szFindFile,pFindFile);
	if( hFind != INVALID_HANDLE_VALUE ) 
	{
		do
		{
			szFile.Empty();
			szFileName.Empty();
			szFileName = pFindFile->cFileName;
			szFile = lpszFilePath;
			szFile += szFileName;
		//	AfxMessageBox(szFile);
			DealWithInsureDict(iCount,wndProgress,szFile);
		}while(FindNextFile(hFind,pFindFile));
	}
	
	if( hFind != NULL && hFind != INVALID_HANDLE_VALUE)	
		FindClose(hFind);
		
	DELETE_POINTER(pFindFile);
}

BOOL CCreateDBDlg::Write2DB(CString &szID,CString &szParentID,CString &szName,CString &szContent,CString szTable)
{
	CVORecordset *pRecordset = new CVORecordset(g_Conn);
	CString szSQL;
	szSQL.Empty();	
	szSQL.Format(_T("INSERT INTO %s ([ID], [PARENT_ID], [NAME]) \
		VALUES (%s,%s,'%s')"),szTable,szID,szParentID,szName);

	if( !pRecordset->Open(szSQL) )
	{
		return FALSE;
	}

	szSQL.Empty();
	szSQL.Format(_T("SELECT [CONTEXT] FROM %s WHERE [ID]=%s"),szTable,szID);

	if( pRecordset->Open(szSQL,adOpenForwardOnly,adLockOptimistic) )
	{
		_variant_t varContext = szContent;
		if( !pRecordset->SetFieldValue(0,varContext) )
		{
			pRecordset->Close();
			delete pRecordset;
			return FALSE;
		}
	}

	pRecordset->Close();
	delete pRecordset;

	return TRUE;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91丨porny丨国产入口| 国产精品资源网站| 99在线精品观看| 日韩一区二区三区av| 亚洲日本在线天堂| 欧美精品在欧美一区二区少妇| 久久久精品天堂| 日韩高清在线电影| 99精品在线免费| 久久久国产精华| 午夜精品一区二区三区三上悠亚| av中文字幕亚洲| 久久久午夜电影| 亚洲va天堂va国产va久| 成人国产精品免费| 久久久精品中文字幕麻豆发布| 性久久久久久久久久久久| 99久久婷婷国产综合精品| 久久久精品国产99久久精品芒果| 免费在线看成人av| 91电影在线观看| 亚洲欧洲一区二区在线播放| 国产专区欧美精品| 欧美成人女星排名| 麻豆成人久久精品二区三区小说| 欧美日本免费一区二区三区| 亚洲影院免费观看| 一本色道综合亚洲| 亚洲欧洲成人精品av97| 不卡的电影网站| 国产精品私房写真福利视频| 国产高清视频一区| 久久―日本道色综合久久| 另类小说综合欧美亚洲| 欧美一区欧美二区| 奇米色777欧美一区二区| 51精品久久久久久久蜜臀| 亚洲国产裸拍裸体视频在线观看乱了| 日本韩国一区二区三区视频| 亚洲精品中文在线| 91国产免费观看| 亚洲一区在线观看网站| 欧美日韩一区二区电影| 亚洲国产日韩一区二区| 欧美少妇一区二区| 亚洲成人av一区二区| 欧美日韩国产综合一区二区| 日韩激情一区二区| 日韩写真欧美这视频| 蜜乳av一区二区| 精品99一区二区| 国产美女久久久久| 国产精品久久久久久久久晋中 | 奇米色777欧美一区二区| 91精品国产全国免费观看| 日韩经典一区二区| 日韩一区二区三区在线| 国产中文字幕一区| 国产精品无圣光一区二区| 91视频观看视频| 夜夜精品视频一区二区| 中文字幕在线不卡视频| 波多野结衣亚洲| 一区二区三区产品免费精品久久75 | 久久亚洲精品小早川怜子| 国产乱码精品一区二区三| 国产精品人成在线观看免费| 91一区二区在线| 婷婷综合在线观看| 精品国产网站在线观看| 成人性生交大片免费看中文网站| 日韩毛片视频在线看| 欧美午夜在线观看| 麻豆极品一区二区三区| 国产视频911| 欧洲中文字幕精品| 免费成人在线网站| 国产精品视频免费| 在线观看91精品国产入口| 美腿丝袜亚洲一区| 中文字幕精品综合| 欧美性色综合网| 国产一区美女在线| 亚洲激情自拍偷拍| 精品日本一线二线三线不卡 | 婷婷综合另类小说色区| 久久久久久麻豆| 欧美性videosxxxxx| 久久国产精品一区二区| 专区另类欧美日韩| 日韩一区二区三区高清免费看看 | 日韩高清在线一区| 国产欧美日本一区视频| 欧美三级中文字幕| 国产麻豆9l精品三级站| 亚洲国产视频在线| 国产亚洲福利社区一区| 欧美丝袜自拍制服另类| 狠狠色丁香久久婷婷综合_中| 一区二区中文字幕在线| 日韩美女视频一区二区在线观看| 99精品热视频| 老司机午夜精品| 亚洲激情图片一区| 日韩欧美美女一区二区三区| 97精品视频在线观看自产线路二| 美日韩黄色大片| 亚洲欧美区自拍先锋| 精品国产乱码久久久久久影片| 色综合久久久久综合体| 国产精品一区二区久激情瑜伽| 亚洲福利视频导航| 国产精品久久久久久一区二区三区| 欧美一级搡bbbb搡bbbb| 国产无一区二区| 欧美美女一区二区| 91免费视频观看| 国产精品99久久久久久似苏梦涵| 午夜影院久久久| 亚洲免费看黄网站| 国产精品免费看片| 久久网站热最新地址| 欧美一区二区视频网站| 欧美丝袜丝nylons| 91麻豆免费在线观看| 国产精品香蕉一区二区三区| 男人的天堂久久精品| 亚洲成人一区二区在线观看| 亚洲欧美色一区| 日本一区二区电影| 久久影音资源网| 日韩一级黄色片| 欧美久久久久久蜜桃| 91精品1区2区| 91免费观看在线| 成人美女视频在线观看| 国产激情一区二区三区四区| 精品一区二区三区视频在线观看 | 亚洲国产精品一区二区www| 日韩美女啊v在线免费观看| 中文字幕久久午夜不卡| 久久久久久久久免费| 日韩免费一区二区| 7777精品伊人久久久大香线蕉经典版下载 | 欧美日韩黄视频| 欧美日韩一区高清| 欧美私人免费视频| 欧美在线观看禁18| 91色.com| 在线观看欧美精品| 在线视频亚洲一区| 在线视频你懂得一区| 欧美在线不卡视频| 欧美丝袜自拍制服另类| 欧美日韩一区二区三区四区| 欧美少妇性性性| 欧美日韩免费不卡视频一区二区三区| 色偷偷久久人人79超碰人人澡| 不卡在线视频中文字幕| 99久久99久久精品免费观看 | 久久国产日韩欧美精品| 久久精品国产久精国产爱| 老司机精品视频一区二区三区| 日韩福利电影在线| 美女视频黄免费的久久| 久久99精品国产麻豆婷婷 | 亚洲一区二区欧美日韩| 亚洲成人中文在线| 日韩一区精品视频| 亚洲成人av一区二区| 男女视频一区二区| 国产一区二区三区精品视频| 国产69精品一区二区亚洲孕妇| www.亚洲色图.com| 国产精品免费久久久久| 中文字幕一区二区三区av| 一区二区三区视频在线观看 | 日本一区二区三区高清不卡 | 久久综合色8888| 久久精品一区二区三区不卡| 国产精品人人做人人爽人人添| 亚洲人成网站精品片在线观看| 亚洲国产精品精华液网站| 蜜桃视频在线观看一区二区| 国产精品99久久久久| 91在线无精精品入口| 欧美日韩国产高清一区二区三区 | 欧美电影免费观看高清完整版在线 | 欧美色网一区二区| 制服丝袜亚洲播放| 久久综合久久鬼色| 国产精品福利在线播放| 亚洲成av人在线观看| 久久精品72免费观看| caoporn国产一区二区| 精品视频123区在线观看| 亚洲精品在线观看视频| 国产精品电影一区二区三区| 五月婷婷综合网| 成人综合激情网|