odbc access 编程 求助如何 将一个txt中的数据 录入 access数据库中 txt中有上万条数据! 谢谢各位大虾! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不知道你数据是什么形式排的,我以前做的是一行一条记录,所以如下处理一行一行的读取然后通过标记来截取信息再插入到access中去 统计时期:2010,用户名:c100314,登录IP:192.168.21.200,服务器IP:127.0.0.1,在线时长:50837统计时期:2010,用户名:c100313,登录IP:192.168.21.133,服务器IP:127.0.0.1,在线时长:13772统计时期:2010,用户名:c100315,登录IP:192.168.21.135,服务器IP:127.0.0.1,在线时长:69724统计时期:2010,用户名:w100409,登录IP:192.168.23.52,服务器IP:127.0.0.1,在线时长:44818类似于上面的数据 如何 批量录入噢? 求实例一枚 !! 谢谢 ACCESS中导入外部数据就可以了噻 上万条数据啊...我当时做的插入数据的方式可傻透了,就是用CString提关键信息,然后生成SQL语句往Access里插...不知道有什么更快的方法没(用C++实现)? 这个是程序设计题目。如何直接access外部导入我可以实现插入一条数据 跪求 批量插入数据循环的代码!! 既然能写出导入一条的方法,那么批量导入就没问题了如果使用的SQL导入数据,可以写一个函数自动生成SQL指令,然后根据从txt中读取到的数据生成新的SQL语句并执行,然后继续读取txt,再生成新的SQL指令....当读取txt文件到EOF时结束,也就完成了导入。我使用ADO做的,不知道其他的连接数据库方法是否同理。 感谢各位大虾 最后我完成了 读的不是TXT文件 而是二进制文件 代码如下void CServerView::OnInsert() { // TODO: Add your control notification handler code here TEST2 MyRead; FILE *fp; fp=fopen("E:\\Math.bat","rb"); //打开二进制文件 进行循环读取 放入access数据库 if(fp==NULL) { // printf("\nerror on open !"); AfxMessageBox("error on open !"); } int Icolumn1=1; char a[20]="1"; while(!feof(fp)) { char Syear[10]; char Sday[10]; char Smonth[10]; int year,day,month; time_t timeTmp; struct tm* timeNow; m_pSet->AddNew(); // m_pSet->SetFieldNull(&(m_pSet->m_column1),FALSE); fread((void*)&MyRead,sizeof(MyRead),1,fp); //读入结构体的函数 if(MyRead.sTime< NOWATIME) //对时间进行判断 不能大于当前时间 否则 下面 time.h的函数会报错 超出int 型长度 { m_pSet->m_column1=a; strcpy(a," "); Icolumn1++; sprintf(a,"%d",Icolumn1); m_pSet->m___ID=MyRead.Name; m_pSet->m_____IP=MyRead.logIP; m_pSet->m____IP=MyRead.logIP; timeTmp=MyRead.sTime; timeNow = localtime(&timeTmp); // colunm2=timeNow->tm_sec+timeNow->tm_min*100; // sprintf(Scolumn2,"%d",colunm2); m_pSet->m_column2=asctime(timeNow); //asctime 时间 结构体转化为字符串 year=timeNow->tm_year+1900; sprintf(Syear,"%d",year); m_pSet->m_year=Syear; month=(timeNow->tm_year+1900)*100+timeNow->tm_mon+1; sprintf(Smonth,"%d",month); m_pSet->m_month=Smonth; day=(timeNow->tm_mon+1)*100+(timeNow->tm_year+1900)*10000+timeNow->tm_mday; sprintf(Sday,"%d",day); m_pSet->m_day=Sday; int MymTime=MyRead.sTime+MyRead.logtime; //登入时间=登出时间+在线时间 登出时间 没提取出来 timeTmp=MymTime; timeNow=localtime(&timeTmp); m_pSet->m_column3=asctime(timeNow); char str[10]; sprintf(str,"%d",MyRead.logtime); //整型转化为字符串的函数 sprintf m_pSet->m_column4=str; m_pSet->Update(); m_pSet->Requery(); } else continue; // TRACE("o!!"); } AfxMessageBox("插入成功 !"); } 根据文件名(yyyy/mm/dd)决定下拉框的内容 希望大侠们尽快帮俺解决这个小问题 MFC如何向某URL进行POST数据? VC中关于ADO 修改数据库的操作问题!~~~~~~ 如何调用同一个工作区中的DLL 救急!在DCOM如何获取客户端创建对象的指针?(解决问题另开贴送200分!跟贴有分!) 载入位图报错 如何使EXE程序支持DCOM 哪里可以下完整版的visio2002呀,我快急死了! 谁晓得关于代理服务器原理和制作方法的文章吗?(给分的哦,一个3分) 求助:有那位知道如何实现Photoshop中选区的功能啊? 怎么把屏幕上已经显示的画面移动到未显示出来的画面上
一行一行的读取然后通过标记来截取信息再插入到access中去
统计时期:2010,用户名:c100313,登录IP:192.168.21.133,服务器IP:127.0.0.1,在线时长:13772
统计时期:2010,用户名:c100315,登录IP:192.168.21.135,服务器IP:127.0.0.1,在线时长:69724
统计时期:2010,用户名:w100409,登录IP:192.168.23.52,服务器IP:127.0.0.1,在线时长:44818
类似于上面的数据 如何 批量录入噢? 求实例一枚 !! 谢谢
如何直接access外部导入我可以实现插入一条数据 跪求 批量插入数据循环的代码!!
如果使用的SQL导入数据,可以写一个函数自动生成SQL指令,然后根据从txt中读取到的数据生成新的SQL语句并执行,然后继续读取txt,再生成新的SQL指令....
当读取txt文件到EOF时结束,也就完成了导入。
我使用ADO做的,不知道其他的连接数据库方法是否同理。
最后我完成了 读的不是TXT文件 而是二进制文件 代码如下
void CServerView::OnInsert()
{
// TODO: Add your control notification handler code here
TEST2 MyRead;
FILE *fp;
fp=fopen("E:\\Math.bat","rb"); //打开二进制文件 进行循环读取 放入access数据库
if(fp==NULL)
{
// printf("\nerror on open !");
AfxMessageBox("error on open !");
}
int Icolumn1=1;
char a[20]="1";
while(!feof(fp))
{
char Syear[10];
char Sday[10];
char Smonth[10];
int year,day,month;
time_t timeTmp;
struct tm* timeNow;
m_pSet->AddNew();
// m_pSet->SetFieldNull(&(m_pSet->m_column1),FALSE);
fread((void*)&MyRead,sizeof(MyRead),1,fp); //读入结构体的函数
if(MyRead.sTime< NOWATIME) //对时间进行判断 不能大于当前时间 否则 下面 time.h的函数会报错 超出int 型长度
{
m_pSet->m_column1=a;
strcpy(a," ");
Icolumn1++;
sprintf(a,"%d",Icolumn1);
m_pSet->m___ID=MyRead.Name;
m_pSet->m_____IP=MyRead.logIP;
m_pSet->m____IP=MyRead.logIP;
timeTmp=MyRead.sTime;
timeNow = localtime(&timeTmp);
// colunm2=timeNow->tm_sec+timeNow->tm_min*100;
// sprintf(Scolumn2,"%d",colunm2);
m_pSet->m_column2=asctime(timeNow); //asctime 时间 结构体转化为字符串
year=timeNow->tm_year+1900;
sprintf(Syear,"%d",year);
m_pSet->m_year=Syear; month=(timeNow->tm_year+1900)*100+timeNow->tm_mon+1;
sprintf(Smonth,"%d",month);
m_pSet->m_month=Smonth; day=(timeNow->tm_mon+1)*100+(timeNow->tm_year+1900)*10000+timeNow->tm_mday;
sprintf(Sday,"%d",day);
m_pSet->m_day=Sday;
int MymTime=MyRead.sTime+MyRead.logtime; //登入时间=登出时间+在线时间 登出时间 没提取出来
timeTmp=MymTime;
timeNow=localtime(&timeTmp);
m_pSet->m_column3=asctime(timeNow);
char str[10];
sprintf(str,"%d",MyRead.logtime); //整型转化为字符串的函数 sprintf
m_pSet->m_column4=str;
m_pSet->Update();
m_pSet->Requery();
}
else
continue;
// TRACE("o!!");
}
AfxMessageBox("插入成功 !");
}