运行弹出内存不足对话框,确定后弹出主对话框。
数据库中数据为float型s_lng s_lat,nvarchar型s_hotel s_shopping s_restaurant s_entertrainment。
代码如下:         CRecordset rs( &db ); 
CString sql = "Select * from GISinformation.dbo.Service_information"; 
rs.Open(CRecordset::dynaset, sql); int j=0;

float n_lng,n_lat;
CString str_lng,str_lat,hotel,shopping,restaurant,entertainment; m_list.DeleteAllItems();
while(!rs.IsEOF())
{
CDBVariant var;
rs.GetFieldValue((short)0,var,SQL_C_DOUBLE);
if(var.m_dwType != DBVT_NULL)
n_lng = var.m_dblVal;
var.Clear();
rs.GetFieldValue(1,var,SQL_C_DOUBLE);
if(var.m_dwType != DBVT_NULL)
n_lat = var.m_dblVal;
var.Clear();
rs.GetFieldValue(2,var,SQL_C_CHAR);
if(var.m_dwType != DBVT_NULL)
hotel = var.m_chVal;
var.Clear();
rs.GetFieldValue(3,var,SQL_C_CHAR);
if(var.m_dwType != DBVT_NULL)
shopping = var.m_chVal;
var.Clear();
rs.GetFieldValue(4,var,SQL_C_CHAR);
if(var.m_dwType != DBVT_NULL)
restaurant = var.m_chVal;
var.Clear();
rs.GetFieldValue(5,var,SQL_C_CHAR);
if(var.m_dwType != DBVT_NULL)
entertainment = var.m_chVal;
var.Clear(); str_lng.Format("%8.3",n_lng);
str_lat.Format("%8.3",n_lat); m_list.SetItemText(i,0,str_lng);
m_list.SetItemText(i,1,str_lat);
m_list.SetItemText(i,2,hotel);
m_list.SetItemText(i,3,shopping);
m_list.SetItemText(i,4,restaurant);
m_list.SetItemText(i,5,entertainment); rs.MoveNext();
j++; }

rs.Close();在线等!!!