C++读取Sql Server
代码如下:
- // 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的更多相关文章
- 如果正确读取SQL Server中的扩展事件?
SQL Server中使用扩展事件捕捉所需的信息后,可以选择存放的位置.比如说内存或文件中,但无论存在哪里,其本质都是一个大XML.因此在SQL Server中读取该XML就是解析扩展事件结果 ...
- 多线程下不反复读取SQL Server 表的数据
在进行一些如发送短信.邮件的业务时,我们常常会使用一个表来存储待发送的数据,由后台多个线程不断的从表中读取待发送的数据进行发送.发送完毕后再将数据转移到历史表中,这样保证待发送表的数据普通情况下不会太 ...
- 多线程下不重复读取SQL Server 表的数据
在进行一些如发送短信.邮件的业务时,我们经常会使用一个表来存储待发送的数据,由后台多个线程不断的从表中读取待发送的数据进行发送,发送完成后再将数据转移到历史表中,这样保证待发送表的数据一般情况下不会太 ...
- 关于TP3.2框架读取Sql server中文字段数据以及处理乱码的一些小心得
最近要做一个项目,需要使用TP3.2框架,之前什么也不会,就硬着头皮上了,结果真的闹了挺多emmmmmm挺低级的错误,就像SQL Server中文字段的读取,一开始我是照着读取英文字段的格式来写的,在 ...
- Java读取SQL server数据库
要打开SQL server 的三个服务,然后再执行代码. package com.sql; import java.sql.SQLException; import java.sql.Statemen ...
- 关于Asp.net超时,延长读取sql server数据库的超时时间!(已解决)
昨天,接到客户反映说应用报“超时时间已到.在操作完成之前超时时间已过或服务器未响应”问题.从网上了一些资料,发现这个问题还是很普遍的.主要有以下两种解决方法: 第一种方法:在web.config中加上 ...
- [20141121]无法通过powershell读取sql server性能计数器问题
背景: 全新服务器,需要增加性能监控,发现无法通过powershell读取性能指标 解决方法: Open the Registry Editor by going to the Start Menu ...
- 关于读取Sql Server数据库时间前端处理问题
var time = this.CreateTime; this.CreateTime = new Date(time.replace("T", " ")).F ...
- JSP JDBC 读取SQL Server 数据2
<%-- Created by IntelliJ IDEA. User: hellohongfu Date: 2017/12/21 Time: 0:16 To change this templ ...
随机推荐
- python灰帽子学习感想
Gray Hat Python Python Programming for hackers and reverse engineers Python灰帽子:黑客与逆向project师的Python编 ...
- 【云计算】OpenStack项目全面介绍
关于OpenStack孵化项目trove(DBaaS)之我见:http://blog.csdn.net/ddl007/article/details/17253751 OpenStack Trove将 ...
- 猜想:一组勾股数a^2+b^2=c^2中,a,b之一必为4的倍数。
证明: 勾股数可以写成如下形式 a=m2-n2 b=2mn c=m2+n2 而m,n按奇偶分又以下四种情况 m n 奇 偶 ① 偶 奇 ② 偶 偶 ③ 奇 奇 ④ 上面①②③三种情况中,mn中存在至少 ...
- webDriver API——第11部分Remote WebDriver
The WebDriver implementation. class selenium.webdriver.remote.webdriver.WebDriver(command_executor=' ...
- 关于comet
Comet是彗星的意思,这一技术之所以借用这个名字,是因为这里的每一次请求都有一个长长的“尾巴”.这个长尾巴就是我们感兴趣的长连接. 因为长连接的实现,Comet可以不需要安装浏览器插件就可以向客户端 ...
- 使用Monkeyrunner进行Android自动化的总结
http://www.2cto.com/kf/201411/356056.html 使用Monkeyrunner进行Android自动化的总结 使用Android自动化的方式,不仅可以用来对Andro ...
- Linux内核project导论——网络:路由:路由原理
总览 路由表 IP层通过路由将数据包送达该送达的目的地址,这就要求在整个网络中建立正确的路由表.路由表的内容是记录要到达哪里下一跳须要发到哪里(能够是port能够是ip),如此整个网络在单个节点仅仅知 ...
- mongodb安装的两条命令
1. 安装 下载并安装,注意安装方式为custom,路径自定义(d:\chengxu\mongodb),安装成功后在mongodb文件夹下新建data文件夹(内新建db文件夹)和logs文件夹(内新建 ...
- bootstrap学习笔记 Bootstrap 列表组
本文将介绍列表组.列表组件用于以列表形式呈现复杂的和自定义的内容.创建一个基本的列表组的步骤如下: 向元素ul 添加class list-group 向li添加class list-group-ite ...
- vs2017搭建自己的nuget服务器
准备环境 vs2017 第一步 创建一个新的asp.net 空网站 .net框架使用4.6以上版本 (或者在第二部中使用低版本的nuget server) 第二步 打开nuget包管理器 搜索nu ...