资源简介
这是一个用VS连接SQL_SERVER的一个简单demo,有注释,清晰易懂,可以很快明白代码是怎么和数据库连接的,并且让你在应用程序里面修改数据的体验,大神勿喷,很好的入门例子。
代码片段和文件信息
// Con_sql.cpp : 定义控制台应用程序的入口点。
//
#include “stdafx.h“
#include
#include//for setw()
#include“windows.h“
using namespace std;
//导入ADO相关类说明路径名可以根据自己系统安装的ADO支持文件的路径来自行设定
//#improt语句会在工程可执行程序输出目录中产生两个文件,分别为*.tlh(类型库头文件)及*.tli(类型库实现文件)
//语句no_namespace说明ADO对象不使用命名空间,rename(“EOF“ “EndOfFile“)说明将ADO中结束标志EOF改为EndOfFile,以避免和其它库中命名相冲突
#import“C:\Program Files\Common Files\System\ado\msado15.dll“ no_namespace rename(“EOF““EndOfFile“)
class STU
{
public:
char sname[10];
int sage;
char test[20];
public:
STU(){}
~STU(){}
};
int _tmain(int argc _TCHAR* argv[])
{
STU student;
::CoInitialize(NULL);//初始化OLE/COM库环境,为访问ADO接口做准备
//_RecordsetPtr智能指针,可以用来打开库内数据表,并可以对表内的记录、字段等进行各种操作
_RecordsetPtr m_pRecordset(“ADODB.Recordset“);//定义记录集对象
//_ConnectionPtr智能指针,通常用于打开、关闭一个库连接或用它的Execute方法来执行一个不返回结果的命令语句
_ConnectionPtr m_pConnection(“ADODB.Connection“);//定义数据库连接对象
_bstr_t bstrSQL(“select *from test_db“);//查询语句
char* query_cmd = “DELETE FROM test_db WHERE name = ‘sge‘“;
try
{
m_pConnection.CreateInstance(“ADODB.Connection“);//创建Connection对象
//设置连接字符串,必须是BSTR型或者_bstr_t类型若数据库在网络上则Server为形如(192.168.1.53340)
_bstr_t strConnect = “Provider=SQLOLEDB; Server=SHOWLO-PC;Database=DB_show; uid=sa; pwd=Showlo328;“;//这需要自己配自己的服务器
m_pConnection->Open(strConnect ““ ““ adModeUnknown);//NULL、adConnectUnspecified、//建立与服务器连接
if (m_pConnection == NULL)
{
cerr << “Lind data ERROR!\n“;
}
m_pRecordset.CreateInstance(__uuidof(Recordset));//创建记录集对象
//取得表中的记录
m_pRecordset->Open(bstrSQL m_pConnection.GetInterfacePtr() adOpenDynamic adLockOptimistic adCmdText);
_variant_t vsname vsage vstest;//对应库中的nameagetest
cout << “姓名年龄性test“;
cout << “\n-------------------------------------------\n“;
while (!m_pRecordset->EndOfFile)
{
vsname = m_pRecordset->GetCollect(“name“);
vsage = m_pRecordset->GetCollect(“age“);
vstest = m_pRecordset->GetCollect(“test“);
if (vsname.vt != VT_NULL&& vsage.vt != VT_NULL &&vstest.vt != VT_NULL)
{
cout.setf(ios::left);
cout << setw(14) << (char*)(_bstr_t)vsname;
cout << setw(8) << (char*)(_bstr_t)vsage;
cout << setw(8) << (char*)(_bstr_t)vstest;
cout.unsetf(ios::left);
cout << endl;
}
m_pRecordset->MoveNext();//移动下一条记录
}
cout << “\n------------------------------------------\n“;
cout << “\n请输入你要添加的学生信息\n“;
cout << “\n姓名:“;
cin >> student.sname;
cout << “\n年龄:“;
cin >> student.sage;
cout << “\n性别:“;
cin >> student.test;
m_pRecordset->MoveFirst();//移动到第一条记录
m_pRecordset->AddNew();//添加新记录
m_pRecordset->PutCollect(“name“ _variant_t(student.sname));
m_pRecordset->PutCollect(“age“ _variant_t(student.sage));
m_pRecordset->
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3801 2018-06-15 16:11 con_sqlser\Con_sql\Con_sql\Con_sql.cpp
文件 4533 2018-06-15 15:02 con_sqlser\Con_sql\Con_sql\Con_sql.vcxproj
文件 1314 2018-06-15 15:02 con_sqlser\Con_sql\Con_sql\Con_sql.vcxproj.filters
文件 1457 2018-06-15 15:42 con_sqlser\Con_sql\Con_sql\Debug\Con_sql.log
文件 316685 2018-06-15 15:42 con_sqlser\Con_sql\Con_sql\Debug\Con_sql.obj
文件 1638400 2018-06-15 15:03 con_sqlser\Con_sql\Con_sql\Debug\Con_sql.pch
文件 1446 2018-06-15 15:42 con_sqlser\Con_sql\Con_sql\Debug\Con_sql.tlog\cl.command.1.tlog
文件 32812 2018-06-15 15:42 con_sqlser\Con_sql\Con_sql\Debug\Con_sql.tlog\CL.read.1.tlog
文件 1060 2018-06-15 15:42 con_sqlser\Con_sql\Con_sql\Debug\Con_sql.tlog\CL.write.1.tlog
文件 167 2018-06-15 15:42 con_sqlser\Con_sql\Con_sql\Debug\Con_sql.tlog\Con_sql.lastbuildstate
文件 1292 2018-06-15 15:42 con_sqlser\Con_sql\Con_sql\Debug\Con_sql.tlog\li
文件 2954 2018-06-15 15:42 con_sqlser\Con_sql\Con_sql\Debug\Con_sql.tlog\li
文件 562 2018-06-15 15:42 con_sqlser\Con_sql\Con_sql\Debug\Con_sql.tlog\li
文件 170857 2017-04-21 23:34 con_sqlser\Con_sql\Con_sql\Debug\msado15.tlh
文件 148904 2017-04-21 23:34 con_sqlser\Con_sql\Con_sql\Debug\msado15.tli
文件 11492 2018-06-15 15:03 con_sqlser\Con_sql\Con_sql\Debug\stdafx.obj
文件 814080 2018-06-15 15:42 con_sqlser\Con_sql\Con_sql\Debug\vc120.idb
文件 921600 2018-06-15 15:42 con_sqlser\Con_sql\Con_sql\Debug\vc120.pdb
文件 1510 2018-06-15 15:02 con_sqlser\Con_sql\Con_sql\ReadMe.txt
文件 213 2018-06-15 15:02 con_sqlser\Con_sql\Con_sql\stdafx.cpp
文件 234 2018-06-15 15:02 con_sqlser\Con_sql\Con_sql\stdafx.h
文件 236 2018-06-15 15:02 con_sqlser\Con_sql\Con_sql\targetver.h
文件 33443840 2018-06-15 16:13 con_sqlser\Con_sql\Con_sql.sdf
文件 967 2018-06-15 15:02 con_sqlser\Con_sql\Con_sql.sln
..A..H. 20480 2018-06-15 16:13 con_sqlser\Con_sql\Con_sql.v12.suo
文件 108544 2018-06-15 15:42 con_sqlser\Con_sql\Debug\Con_sql.exe
文件 939064 2018-06-15 15:42 con_sqlser\Con_sql\Debug\Con_sql.ilk
文件 1747968 2018-06-15 15:42 con_sqlser\Con_sql\Debug\Con_sql.pdb
文件 3080192 2018-06-15 15:02 con_sqlser\Con_sql\ipch\con_sql-3897785e\con_sql-fb8c3cfb.ipch
目录 0 2018-06-15 15:42 con_sqlser\Con_sql\Con_sql\Debug\Con_sql.tlog
............此处省略10个文件信息
相关资源
- 支持加密的sqlite 最新版本sqlite3.7.7.
- 企业人事管理系统 vs2010
- 通讯录_SQLServer版
- 基于角色的权限管理经典源码
- 通用的跨平台数据交换接口(SQLSERV
- 物流管理系统-vs2008-sql2005
- Vs2015+SQL Server2014开发的一整套进销存
- 一个经典的SSH框架银行系统源码+数据
- 连接mysql sqlserver的两个数据库
- 用vs2008和sql2005制作的学籍管理系统
-
SharedManagementob
jects.msi+sqlncli+SQLSysC - QT实现宿舍管理系统+数据库SQLServer
- MySQL迁移SQLServer工具
- SpringMVC+Mybatis+SQLServer整合源码 含数据
- SQLServer2008Client
- sqlapi v4.2.1 for vs2017 特别版
- 基于AE10.4+VS2013校园基建管理系统开发
- SQLSERVER2008数据库AdventureWorksDW2008
- 教室管理系统
- SqlServer存储过程、游标讲解
- sqlserver数据库课设酒店管理系统
- SSM框架连接MySQL实现简单的增删改查
- 在线购物系统
- 组态王与SQLServer的交互
- windows7下的sql server 2008安装步骤
- SQLServer故障转移集群
- mysql数据库转换成SQLserver数据库
- sqlserver2008数据库练习
- sqlsysclrtypes.msi
- sqlserver数据库比较工具SQLDataCompare_1
评论
共有 条评论