代码如下:

// ReadSqlConsole.cpp: 主项目文件。

#include "stdafx.h"
#include <iostream>
#include<iostream>
#include<iomanip>//for setw()
#include"windows.h" #import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","EndOfFile") using namespace System;
using namespace std; int main(array<System::String ^> ^args)
{
::CoInitialize(NULL); //类型在msado15.dll中已定义
_RecordsetPtr m_pRecordset("ADODB.Recordset");
_ConnectionPtr m_pConnection("ADODB.Connection"); _bstr_t bstrSQL("select * from er_order where pactnumber like '13010000%' order by pactnumber"); //对应的sql语句 try
{
clog << "正在连接数据库..." << endl;
m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象
//设置连接字符串,必须是BSTR型或者_bstr_t类型
_bstr_t strConnect = "Provider=SQLOLEDB; Server=【数据库实例】;Database=【数据库名】; uid=【数据库用户】; pwd=【密码】;";
m_pConnection->Open(strConnect, "", "", adModeUnknown);//服务器连接 if (m_pConnection == NULL)
{
std::cerr << "Lind data ERROR!\n";
} m_pRecordset.CreateInstance(__uuidof(Recordset));//创建记录集对象 //取得表中的记录
m_pRecordset->Open(bstrSQL, m_pConnection.GetInterfacePtr(), adOpenDynamic, adLockOptimistic, adCmdText); _variant_t PactNumber, OrigCount;//对应库中的字段 cout << "--------------合同清单--------------" << endl;
while (!m_pRecordset->EndOfFile)
{
PactNumber = m_pRecordset->GetCollect("Pactnumber");
OrigCount = m_pRecordset->GetCollect("Origcount");
cout << "合同号:" << setw() << (char*)(_bstr_t)PactNumber;
cout << " 签单额:" << setw() << (char*)(_bstr_t)OrigCount << endl; m_pRecordset->MoveNext();//下一条记录
}
m_pRecordset->Close();//关闭记录集
} catch (_com_error e)//捕捉异常
{
cerr << "\nERROR:" << (char*)e.Description();
} if (m_pConnection->State)
{
m_pConnection->Close();
} ::CoUninitialize(); Console::ReadLine(); return ;
}

C++读取Sql Server的更多相关文章

  1. 如果正确读取SQL Server中的扩展事件?

        SQL Server中使用扩展事件捕捉所需的信息后,可以选择存放的位置.比如说内存或文件中,但无论存在哪里,其本质都是一个大XML.因此在SQL Server中读取该XML就是解析扩展事件结果 ...

  2. 多线程下不反复读取SQL Server 表的数据

    在进行一些如发送短信.邮件的业务时,我们常常会使用一个表来存储待发送的数据,由后台多个线程不断的从表中读取待发送的数据进行发送.发送完毕后再将数据转移到历史表中,这样保证待发送表的数据普通情况下不会太 ...

  3. 多线程下不重复读取SQL Server 表的数据

    在进行一些如发送短信.邮件的业务时,我们经常会使用一个表来存储待发送的数据,由后台多个线程不断的从表中读取待发送的数据进行发送,发送完成后再将数据转移到历史表中,这样保证待发送表的数据一般情况下不会太 ...

  4. 关于TP3.2框架读取Sql server中文字段数据以及处理乱码的一些小心得

    最近要做一个项目,需要使用TP3.2框架,之前什么也不会,就硬着头皮上了,结果真的闹了挺多emmmmmm挺低级的错误,就像SQL Server中文字段的读取,一开始我是照着读取英文字段的格式来写的,在 ...

  5. Java读取SQL server数据库

    要打开SQL server 的三个服务,然后再执行代码. package com.sql; import java.sql.SQLException; import java.sql.Statemen ...

  6. 关于Asp.net超时,延长读取sql server数据库的超时时间!(已解决)

    昨天,接到客户反映说应用报“超时时间已到.在操作完成之前超时时间已过或服务器未响应”问题.从网上了一些资料,发现这个问题还是很普遍的.主要有以下两种解决方法: 第一种方法:在web.config中加上 ...

  7. [20141121]无法通过powershell读取sql server性能计数器问题

    背景: 全新服务器,需要增加性能监控,发现无法通过powershell读取性能指标 解决方法: Open the Registry Editor by going to the Start Menu ...

  8. 关于读取Sql Server数据库时间前端处理问题

    var time = this.CreateTime; this.CreateTime = new Date(time.replace("T", " ")).F ...

  9. JSP JDBC 读取SQL Server 数据2

    <%-- Created by IntelliJ IDEA. User: hellohongfu Date: 2017/12/21 Time: 0:16 To change this templ ...

随机推荐

  1. VB6.0中数组的定义实測

    作者:iamlasong 1.环境 Visual Basic 6.0精简版,由于仅仅做一些小工具,认为这个已经够了.我认为.编程语言.数据库等东西,不一定要用最新的,适合.够用就好,比方Win8都出来 ...

  2. Android-经常涉及到的权限

    Android中配置权限的方法: 在AndroidMainFest.xml中加上以下代码 Android中一些经常涉及到的权限: 添加WiFi以及访问网络的权限: <uses-permissio ...

  3. PHP的两个科学计数法转换为字符串的方法

    不常用,所以整理在这里,分享给同行使用 方法一:取尾数法 public function NumToStr($num) { if (stripos($num, 'e') === false) retu ...

  4. [Angular] Angular i18n Pluralization Support

    // Component: this.coursesTotal = this.course,length <div i18n>{coursesTotal, plural, =0 {No c ...

  5. Vi 编辑器

    Vi的用法 1.简介 Vi,是一个文本编辑器,可以执行输出.删除.查找.替换.块操作等众多文本操作,vi不是一个排版程序.不像word或WPS那样可以对字体.格式.段落等属性进行编排,他只是一个文本编 ...

  6. Request常用方法

    一.HttpServletRequest介绍 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象 ...

  7. Qt for Android 开发大坑

    Qt for Android 开发大坑 作者: qyvlik Qt 5.5.1 这里说一说比較常见的 Qt 开发安卓的大坑. 希望同学们不要做无谓的挣扎,跳过这些坑. 输入框 首当其冲的是输入框,Qt ...

  8. Js实现AES/RSA加密

    1. function aesEncrypt(text, secKey) { var key = CryptoJS.enc.Utf8.parse(secKey); var iv = CryptoJS. ...

  9. C# 取时间段年、月、日、季度

    DateTime dt = DateTime.Now;  //当前时间             DateTime startWeek = dt.AddDays(1 - Convert.ToInt32( ...

  10. 【转】打造自己的视频会议系统 GGMeeting(附送源码)

    原文地址:http://www.cnblogs.com/justnow/p/4487201.html 自从在博客园发布开源即时通信系统GG(QQ高仿版)以来,结识了很多做IM的朋友,然后我和我的伙伴们 ...