




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VC通过ADO打开SQL SERVER数据库,并将其中的表、字段、数据显示出来的小程序2007年12月26日 星期三 21:48下载地址:/user/huliang66/1、连接数据库类BOOL CSqlDlg:Ado(CString strConn):CoInitialize(NULL); / 初始化OLE/COM库环境 try m_pConn.CreateInstance(ADODB.Connection); /创建Connection对象 m_pConn-ConnectionTimeout=5; /设置超时时间为5秒 m_pConn-Open(_bstr_t)strConn, , adModeUnknown);/连接数据库 catch(_com_error e) CATCH_ERROR; return false;return true;/2、执行strSQL的SQL语句,返回集录集_RecordsetPtr& CSqlDlg:GetRS(CString strSQL) try m_pRS.CreateInstance(_uuidof(Recordset); m_pRS-Open(_bstr_t)strSQL,m_pConn.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);/执行SQL语句catch(_com_error e) CATCH_ERROR return m_pRS;/3、获取所有表名-SQL SERVER_RecordsetPtr pRS = GetRS(select name from sysobjects where xtype=U);CString user;int x=0;strArry.RemoveAll();try while (pRS-adoEOF=0) strArry.Add(LPCSTR)(_bstr_t)pRS-GetCollect(_variant_t(long)x); pRS-MoveNext(); catch(_com_error e) CATCH_ERROR return;/4、将表名写入列表中for(int i=0; iEnableWindow(0);GetDlgItem(IDC_OPEN)-EnableWindow(1);/列表控件双击事件读出表中记录/6、m_list1.DeleteAllItems();UpdateData(1); int q=0;/获取记录条数q=GetNum(m_str_list);/获取字段个数=CString strSql1;strSql1=select * from;strSql1+= ;strSql1+=m_str_list;_RecordsetPtr m_pRS2 = GetRS(strSql1); dataSize=GetFieldsCount(m_pRS2);/=if (dataSize=0) return;/获取字段名strName=CString *strName=new CStringdataSize;for (int bb=0;bbdataSize;bb+) GetFieldsName(m_pRS,bb,*(strName+bb);/=/清空表头while(m_list1.DeleteColumn(0);/将字段显示出来for (int cc=0;ccdataSize;cc+) m_list1.InsertColumn(cc, *(strName+cc), LVCFMT_LEFT, 150);if (q=0) return;CString strSql;strSql=select * from;strSql+= ;strSql+=m_str_list;_RecordsetPtr pRS = GetRS(strSql);CStringArray *strdataArray=new CStringArraydataSize;/获取字段内容,并存入strdataArray+aa中=try for (int aa=0;aaadoEOF =0) CString str1; _variant_t varTemp; / str1.Format(%s,(LPCSTR)(_bstr_t)pRS-GetCollect(_variant_t(long)aa); /判断数据库中的NULL值 varTemp=pRS-GetCollect(_variant_t(long)aa); if(varTemp.vt =VT_NULL) str1=; else str1.Format(%s,(LPCSTR)(_bstr_t)pRS-GetCollect(_variant_t(long)aa); (strdataArray+aa)-Add(str1); pRS-MoveNext(); pRS-MoveFirst(); catch(_com_error e) CATCH_ERROR return;/= CString str=;CString str;for (int tt=0;ttq;tt+) m_list1.InsertItem(q,1,0);/插入行 for(int i=0; iGetAt(tt); TRACE( 行:%d, 列:%d,数据:%sn,tt,i,str); m_list1.SetItemText(tt,i,str);/插入内容 / MessageBox(str); delete strName;delete strdataArray; /释放申请的空间/得到记录条数函数int CSqlDlg:GetNum(CString strc)int nSize=0;CString strSql;strSql=select count(*) from;strSql+= ;strSql+=strc;_RecordsetPtr pRS = GetRS(strSql);CString s=(LPCSTR)(_bstr_t)pRS-GetCollect(_variant_t(long)0);char *ch=new chars.GetLength();ch=(LPSTR)(LPCTSTR)s;nSize=atoi(ch); return nSize;delete ch;/获取字段名函数BOOL CSqlDlg:GetFieldsName(_RecordsetPtr RcdPtr, int nField, CString & strFieldName) if(NULL = RcdPtr | nField = RcdPtr-GetFields()-Count) return FALSE;_variant_t vt(long)nField);strFieldName.Format(_T(%s), (char*)(RcdPtr-GetFields()-Itemvt-Name); return true;/获取字段个数函数int CSqlDlg:GetFieldsCount(_RecordsetPtr RcdPtr) int nCount=0;if(NULL != RcdPtr) nCount = RcdPtr-GetFields()-Count; return nCount; /断开连接void CSqlDlg:OnOpen() / TODO: Add your control notification handler code hereGetDlgItem(IDC_LIST)-EnableWindow(1);GetDlgItem(IDC_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新光伏施工合同(知识研究版本)
- 中国米粉行业产销规模与前景消费需求趋势预测研究报告
- 2025至2030中国防霜冻风扇市场销售渠道与营销推广策略报告
- 2025至2030中国鞋面革市场竞争风险及发展形势研究报告
- 2025至2030中国硝酸钠市场前景预测及发展趋势研究报告
- 2025至2030中国汽车水泵总成行业发展现状与投资可行性研究报告
- 2025至2030中国工业金属管件行业前景需求规模与投资盈利研究报告
- 2025至2030中国宠物经济行业经营风险及未来营销创新策略报告
- 2025至2030中国壁挂式坐便器行业全景深度调研与未来发展趋势研究报告
- 2025至2030中国半无烟煤市场竞争格局展望与投资价值评估报告
- 趣说中国史宋朝篇
- 委托持股协议
- 《新概念英语》第三册课文详解及课后答案
- 拔罐技术操作考核评分标准
- 人工智能基础-AI介绍
- 全国优质课一等奖高中物理必修一《实验:探究平抛运动特点》精美课件
- 蛤蟆先生去看心理医生
- 煤矿井下密闭专项设计
- 心脏康复护理专家共识PPT
- 配电箱每日检查记录表
- VDA6.3-2023版审核检查表
评论
0/150
提交评论