• 大小: 8.11MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-11-02
  • 语言: 数据库
  • 标签: sqlserver  vs  demo  

资源简介

这是一个用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\link.command.1.tlog

     文件       2954  2018-06-15 15:42  con_sqlser\Con_sql\Con_sql\Debug\Con_sql.tlog\link.read.1.tlog

     文件        562  2018-06-15 15:42  con_sqlser\Con_sql\Con_sql\Debug\Con_sql.tlog\link.write.1.tlog

     文件     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个文件信息

评论

共有 条评论