新建一个部门表Department用来保存企业部门的信息。字段值:int Dep_id(主键);CString Dep_name;CString Describe;int UpperId;.cpp文件中这样写
CDepartments::CDepartments()
{
Dep_id = 0;
Dep_name = "";
Describe = "";
UpperId = 0;
}long CDepartments::sql_insert()
{
//连接数据库
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
//设置INSERT语句
CString strUpperId;
strUpperId.Format("%d", UpperId); _bstr_t vSQL;
vSQL = "INSERT INTO Departments (Dep_name, Describe, UpperId) VALUES('" 
+ Dep_name + "','" + Describe + "'," + strUpperId + ")";
//执行INSERT语句
m_AdoConn.ExecuteSQL(vSQL);

//读取最大编号
  这里不理解为什么要读取最大值??? long lDepId;
vSQL = "SELECT MAX(Dep_id) AS MaxId FROM Departments";
//执行SELETE语句
_RecordsetPtr m_pRecordset;
m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
//返回各列的值
if (m_pRecordset->adoEOF)
lDepId = 0;
else
lDepId = atol((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("MaxId"));
//断开与数据库的连接
m_AdoConn.ExitConnect(); return lDepId;
}//根据员工编号读取所有字段值
void CDepartments::GetData(CString cDepId)
{
//连接数据库
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
//设置SELECT语句
_bstr_t vSQL;
vSQL = "SELECT * FROM Departments WHERE Dep_id=" + cDepId;
//执行SELETE语句
_RecordsetPtr m_pRecordset;
m_pRecordset = m_AdoConn.GetRecordSet(vSQL); //返回各列的值
if (m_pRecordset->adoEOF)
CDepartments();
else
{
Dep_id = atoi(cDepId); 在表中主键Dep_id我理解为应该是设自动增长,从1开始增一。 这里又重新赋值,不理解,那么在表中这个主键应该怎么设定呢??? Dep_name = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Dep_Name");
Describe = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Describe");
UpperId = atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("UpperId"));
}
//断开与数据库的连接
m_AdoConn.ExitConnect();
}