MainFrm.h
上传用户:jsxglz
上传日期:2007-01-03
资源大小:117k
文件大小:5k
源码类别:

SQL Server

开发平台:

Visual C++

  1. // MainFrm.h : interface of the CMainFrame class
  2. //
  3. /////////////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_MAINFRM_H__96F0E249_A409_11D1_B9D3_204C4F4F5020__INCLUDED_)
  5. #define AFX_MAINFRM_H__96F0E249_A409_11D1_B9D3_204C4F4F5020__INCLUDED_
  6. #if _MSC_VER >= 1000
  7. #pragma once
  8. #endif // _MSC_VER >= 1000
  9. #include "SQLView.h"
  10. #include "ResultView.h"
  11. #include "ISQLToolBar.h"
  12. class CMainFrame;
  13. struct ThreadParam
  14. {
  15. CStringEx m_strSQL;
  16. CResultView* m_pView;
  17. CMainFrame* m_pFrame;
  18. };
  19. class CMainFrame : public CFrameWnd
  20. {
  21. protected: // create from serialization only
  22. CMainFrame();
  23. DECLARE_DYNCREATE(CMainFrame)
  24. // Attributes
  25. public:
  26. // Operations
  27. public:
  28. // Overrides
  29. // ClassWizard generated virtual function overrides
  30. //{{AFX_VIRTUAL(CMainFrame)
  31. public:
  32. virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
  33. protected:
  34. virtual BOOL OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext);
  35. //}}AFX_VIRTUAL
  36. // Implementation
  37. public:
  38. BOOL IsTextDataSource();
  39. CString m_strServerName;
  40. void InitialShowWindow(UINT nCmdShow);
  41. CSQLView* GetSQLView();
  42. virtual ~CMainFrame();
  43. CStatusBar  m_wndStatusBar;
  44. int m_nResultSetPaneNo;
  45. CString m_strDBMS;
  46. CString m_strMSSQLServer;
  47. CString m_strSQLAnyWhere;
  48. CString m_strSybaseOpenServer;
  49. CString m_strOracle;
  50. #ifdef _DEBUG
  51. virtual void AssertValid() const;
  52. virtual void Dump(CDumpContext& dc) const;
  53. #endif
  54. protected:  // control bar embedded members
  55. CISQLToolBar m_wndToolBar;
  56. // Generated message map functions
  57. public:
  58. int m_nLoginTimeOut;
  59. int m_nThreadPriority;
  60. int m_nQueryTimeOut;
  61. BOOL m_bCanceled;
  62. BOOL m_bExecuting;
  63. CString m_strDBName;
  64. CComboBox m_comboBox;
  65. CRecordsetEx* m_pSet;
  66. BOOL m_bIsMultiSetSupported;
  67. BOOL m_bIsTSQLSupported;
  68. BOOL IsMultiResultSetsSupported();
  69. BOOL m_bIsJetDriver;
  70. BOOL IsODBCJetDriver();
  71. CString m_strODBCDSN;
  72. CPtrList m_GridList;
  73. CString m_strStatusText;
  74. void OnExceptionClear(const CString& sMsg);
  75. void SetResultSetInfo();
  76. CResultView* GetResultView();
  77. BOOL ExecuteSQLEx(const CStringEx& sSQL);
  78. CDatabase m_database;
  79. CSplitterWnd m_wndSplitter;
  80. //{{AFX_MSG(CMainFrame)
  81. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  82. afx_msg void OnSqlLogon();
  83. afx_msg void OnSqlExecute();
  84. afx_msg void OnUpdateSqlExecute(CCmdUI* pCmdUI);
  85. afx_msg void OnSqlLogoff();
  86. afx_msg void OnUpdateSqlLogoff(CCmdUI* pCmdUI);
  87. afx_msg void OnUpdateSqlLogon(CCmdUI* pCmdUI);
  88. afx_msg void OnSize(UINT nType, int cx, int cy);
  89. afx_msg void OnSqlSelectTables();
  90. afx_msg void OnUpdateSqlSelectTables(CCmdUI* pCmdUI);
  91. afx_msg void OnSelChangeDatabase();
  92. afx_msg void OnSqlSelectProcedures();
  93. afx_msg void OnUpdateSqlSelectProcedures(CCmdUI* pCmdUI);
  94. afx_msg void OnSqlObjects();
  95. afx_msg void OnViewPrevResultSet();
  96. afx_msg void OnUpdateViewPrevResultSet(CCmdUI* pCmdUI);
  97. afx_msg void OnViewNextResultSet();
  98. afx_msg void OnUpdateViewNextResultSet(CCmdUI* pCmdUI);
  99. afx_msg void OnViewFirstResultSet();
  100. afx_msg void OnUpdateViewFirstResultSet(CCmdUI* pCmdUI);
  101. afx_msg void OnViewLastResultSet();
  102. afx_msg void OnUpdateViewLastResultSet(CCmdUI* pCmdUI);
  103. afx_msg void OnUpdateSqlObjects(CCmdUI* pCmdUI);
  104. afx_msg void OnHelpOdbcInfo();
  105. afx_msg void OnUpdateHelpOdbcInfo(CCmdUI* pCmdUI);
  106. afx_msg void OnSqlCancel();
  107. afx_msg void OnUpdateSqlCancel(CCmdUI* pCmdUI);
  108. afx_msg void OnServerConfigure();
  109. afx_msg void OnQueryOptions();
  110. afx_msg void OnUpdateCombo(CCmdUI* pCmdUI);
  111. afx_msg void OnQueryNew();
  112. afx_msg void OnUpdateQueryNew(CCmdUI* pCmdUI);
  113. afx_msg void OnClose();
  114. //}}AFX_MSG
  115. afx_msg void OnUpdateIndicatorResultSetInfo(CCmdUI* pCmdUI);
  116. afx_msg LONG OnExecutionComplete(UINT wParam, LONG lParam);
  117. DECLARE_MESSAGE_MAP()
  118. private:
  119. void ConnectDataSource();
  120. BOOL CloneProcess(const bool& bNewQuery = true);
  121. bool m_bNewConnection;
  122. void SetExecutionTime();
  123. DWORD m_dwStart;
  124. int m_nExecutionTimePaneNo;
  125. CString m_strExecutionTime;
  126. BOOL m_bSQLCancelSupported;
  127. BOOL IsSQLCancelSupported();
  128. int GetThreadPriority(const CString& sPriority);
  129. CString GetQueryDef(const CString& sDBName, const CString& sSQL);
  130. int m_nServerPaneNo;
  131. void HideResultSets();
  132. void DisplayResults(CMSFlexGrid* pGridCtrl, const int& nCurrentSet);
  133. CString GetRowCount(const CString& sSQL);
  134. UINT m_nID;
  135. BOOL IsObjectExists(const CString& sObjName);
  136. void DisplayProcedureText(const CString& sText);
  137. CString GetProcedureText(CString& sSQL, const CString& sObjName);
  138. BOOL SelectDatabase();
  139. BOOL FillCombo();
  140. CFont m_font;
  141. int m_nIndex;
  142. CMSFlexGrid* GetGrid();
  143. void SetGridHeaderInfo(CMSFlexGrid* pGrid, CRecordsetEx* pSet);
  144. void ClearGridList();
  145. bool m_bOKToSize;
  146. ThreadParam m_ThreadParam;
  147. };
  148. /////////////////////////////////////////////////////////////////////////////
  149. //{{AFX_INSERT_LOCATION}}
  150. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  151. #endif // !defined(AFX_MAINFRM_H__96F0E249_A409_11D1_B9D3_204C4F4F5020__INCLUDED_)