📄 avedlg.cpp
字号:
// AVEDLG.cpp : implementation file
//
#include "stdafx.h"
#include "lxy.h"
#include "AVEDLG.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// AVEDLG dialog
AVEDLG::AVEDLG(CWnd* pParent /*=NULL*/)
: CDialog(AVEDLG::IDD, pParent)
{
//{{AFX_DATA_INIT(AVEDLG)
m_num = -1;
//}}AFX_DATA_INIT
}
void AVEDLG::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(AVEDLG)
DDX_Control(pDX, IDC_RADIO4, m_radio);
DDX_Control(pDX, IDC_LIST1, m_list);
DDX_Radio(pDX, IDC_RADIO4, m_num);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(AVEDLG, CDialog)
//{{AFX_MSG_MAP(AVEDLG)
ON_COMMAND_RANGE(IDC_RADIO4,IDC_RADIO7,OnRadio4)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// AVEDLG message handlers
void AVEDLG::OnRadio4()
{UpdateData();
switch(m_num)
{
case 0:
sqlstr="INSERT into temptab(no,sum) SELECT sno,avg(grade) FROM sc group by sno";
colname1="学号";colname2="平均分";break;
case 1:
sqlstr="INSERT into temptab(no,sum) SELECT sno,avg(credit) FROM sc,course where sc.cno=course.cno group by sno";
colname1="学号";colname2="学分和";break;
case 2:
sqlstr="INSERT into temptab(no,sum) SELECT cno,avg(grade) FROM sc group by cno";
colname1="课程号";colname2="平均分";break;
case 3:
sqlstr="INSERT into temptab(no,sum) select course.cno,tname from(course inner join teacher on course.tno=teacher.tno) ";
colname1="课程号";colname2="任课教师";break;
}
Loaddate();
}
BOOL AVEDLG::OnInitDialog()
{
CDialog::OnInitDialog();
db.OpenEx("DSN=成绩管理;UID=sa;PWD=");
sqlstr=" create table temptab (no char(6),sum char(8)) ";
try
{
db.ExecuteSQL(sqlstr);
}
catch(...)
{
sqlstr="drop table temptab";
db.ExecuteSQL(sqlstr);
sqlstr=" create table temptab (no char(6),sum chat(8)) ";
db.ExecuteSQL(sqlstr);
}
m_radio.SetCheck(1);
sqlstr=" INSERT into temptab(no,sum) SELECT sno,avg(grade) FROM sc group by sno";
colname1="学号";colname2="平均分";
Loaddate();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void AVEDLG::Loaddate()
{m_list.DeleteAllItems();
m_list.DeleteColumn (0);
m_list.DeleteColumn (0);
db.ExecuteSQL(sqlstr);
m_list.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
m_list.InsertColumn(0,colname1,LVCFMT_CENTER,160);
m_list.InsertColumn(1,colname2,LVCFMT_CENTER,160);
CRecordset m_pSet(&db);
m_pSet.Open(CRecordset::dynaset,"select * from temptab");
int kk ,row=0;
CString stemp,str;
kk=m_pSet.GetODBCFieldCount();
while(!m_pSet.IsEOF())
{
m_pSet.GetFieldValue(short(0),stemp);
m_list.InsertItem(row,stemp);
int col=1;
while(col<kk)
{
m_pSet.GetFieldValue(short(col),stemp);
m_list.SetItemText(row,col,stemp);
col++;
}
row++;
m_pSet.MoveNext();
}
str.Format("delete from temptab");//删除临时表
db.ExecuteSQL(str);
m_pSet.Close();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -