资源简介
前几天在研究C/C++链接SQL server数据的方法,前前后后在网上找了不少的文章,大多数文章都没法真正的解决入门新手的全部疑惑,所以在此整理一下自己整个连接数据库的过程,希望能帮到有需要的人。
代码片段和文件信息
/************************************************************************/
/* Fuction:数据库操作中的添加,查找,删除 修改还没添加 */
/* Editor:王培丞 */
/* Time:2017-10-02 */
/*注意:项目属性-> C/C++ ->命令行->其他选项 / D _CRT_SECURE_NO_WARNINGS */
/* 配置属性->常规:字符集->未设置 */
/************************************************************************/
#include “city.h“
int main()
{
UCHAR szDSN[SQL_MAX_DSN_LENGTH + 1] = “db_city“; //数据库名
UCHAR szUID[MAXNAME] = “sa“; //用户名
UCHAR szAuthStr[MAXNAME] = “ww123456“; //密码
char sql[61] = “\0“; //插入时是用的sql语句的存放变量
char initialize[2] = “\0“; //初始化变量
/*
一、使用ODBC API建立数据库连接分为3部分:
1.申请环境句柄,
2.使用环境句柄申请连接句柄
3.使用连接句柄连接数据库
*/
//1.申请环境句柄
SQLAllocHandle(SQL_HANDLE_ENV NULL &henv);
SQLSetEnvAttr(henv SQL_ATTR_ODBC_VERSION
(SQLPOINTER)SQL_OV_ODBC3SQL_IS_INTEGER);
//2.使用环境句柄申请连接句柄
SQLAllocHandle(SQL_HANDLE_DBC henv &hdbc);
//3.使用连接句柄连接数据库
SQLRETURN SOL_RET = SQLConnect(hdbc szDSN SQL_NTS szUID SQL_NTS szAuthStr SQL_NTS);
if ((SOL_RET != SQL_SUCCESS) && (SOL_RET != SQL_SUCCESS_WITH_INFO))
{
printf(“连接失败!“);
}
else
{
/*
二、创建并执行一条或多条SQL语句
1.分配一个语句句柄(statement handle)
2.创建SQL语句
3.执行语句
4.销毁语句
*/
int choose; //用户选择序号的储存变量
while (1)
{
printf(“城市管理系统:\n“);
printf(“ 1.添加城市\n“);
printf(“ 2.全部查询\n“);
printf(“ 3.纬度精确查询\n“);
printf(“ 4.删除城市\n“);
printf(“ 0.退出系统\n“);
printf(“\n“);
scanf(“%d“ &choose);
SQLAllocHandle(SQL_HANDLE_STMT hdbc &hstmt);//每次循环分配一个句柄
switch (choose)
{
case ADD_INSERT:
{ //添加城市
insert_city( sql initialize);
break;
}
case SELECT_ALL:
{
//全部输出
selectAll( sql initialize);
break;
}
case SELECT_LAT_EXACT:
{
//通过具体纬度查找
selectByLat( sql initialize);
break;
}
case DELETE_INSERT:
{
//删除城市
delete_city( sql initialize);
break;
}
case EXIT:
{
//删除城市
exit(0);
}
}
SQLCloseCursor(hstmt);
SQLFreeHandle(SQL_HANDLE_STMT hstmt);
}
}
/*
三、断开数据源
1.断开与数据源的连接.
2.释放连接句柄.
3.释放环境句柄 (如果不再需要在这个环境中作更多连接)
*/
SQLDisconnect(hdbc);
SQLFreeHandle(SQL_HANDLE_DBC hdbc);
SQLFreeHandle(SQL_HANDLE_ENV henv);
getchar();
getchar();
return(0);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
..A..H. 33792 2017-10-03 12:00 数据库_城市管理3\.vs\数据库_城市管理3\v14\.suo
文件 588288 2017-10-03 11:58 数据库_城市管理3\readme.doc
文件 2837 2017-10-02 21:53 数据库_城市管理3\数据库_城市管理3\city.cpp
文件 6277 2017-10-03 12:00 数据库_城市管理3\数据库_城市管理3\city.h
文件 47039 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug\city.obj
文件 551936 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug\vc140.idb
文件 167936 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug\vc140.pdb
文件 611 2017-10-02 21:45 数据库_城市管理3\数据库_城市管理3\Debug\数据库_城市管理3.Build.CppClean.log
文件 443 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug\数据库_城市管理3.log
文件 696 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug\数据库_城市管理3.tlog\CL.command.1.tlog
文件 21600 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug\数据库_城市管理3.tlog\CL.read.1.tlog
文件 540 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug\数据库_城市管理3.tlog\CL.write.1.tlog
文件 1210 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug\数据库_城市管理3.tlog\li
文件 2752 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug\数据库_城市管理3.tlog\li
文件 518 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug\数据库_城市管理3.tlog\li
文件 226 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug\数据库_城市管理3.tlog\数据库_城市管理3.lastbuildstate
文件 7832 2017-10-02 20:27 数据库_城市管理3\数据库_城市管理3\数据库_城市管理3.vcxproj
文件 1062 2017-10-02 20:22 数据库_城市管理3\数据库_城市管理3\数据库_城市管理3.vcxproj.filters
文件 1351 2017-10-02 19:52 数据库_城市管理3\数据库_城市管理3.sln
文件 26664960 2017-10-03 12:00 数据库_城市管理3\数据库_城市管理3.VC.db
目录 0 2017-10-02 19:52 数据库_城市管理3\.vs\数据库_城市管理3\v14
目录 0 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug\数据库_城市管理3.tlog
目录 0 2017-10-02 19:52 数据库_城市管理3\.vs\数据库_城市管理3
目录 0 2017-10-02 21:50 数据库_城市管理3\数据库_城市管理3\Debug
...D.H. 0 2017-10-02 19:52 数据库_城市管理3\.vs
目录 0 2017-10-03 12:00 数据库_城市管理3\数据库_城市管理3
目录 0 2017-10-03 12:00 数据库_城市管理3
----------- --------- ---------- ----- ----
28101906 27
............此处省略0个文件信息
相关资源
- MFC Mysql数据库访问软件
- 基于数据库的学生成绩管理系统
- 书店租赁系统C++带SQL数据库
- 用MFC编写的对mysql数据库的操作
- c++语言写的 图书管理系统
- 图书管理系统c++与SQL数据库+课程设计
- C++ MFC连接数据库(VisualStudio开发)
- C语言操作MySQL数据库
- 图书馆管理数据存储到mysql数据库中
- mfc链接sql数据库查询、修改、删除
- Mysql数据库语句、增删该查总结及MF
- mfc ado操作sql数据库查询、读写,删除
- C++ 电影公布器2.0-------网络版MYSQL数据
- MFC连接MySql数据库
- c++ SQL数据库结构提取器模块源码
- c++ 学生管理系统源码(mysql数据库)
- Android SQL数据库开发(sqlite创建数据库
- C++实现SQL数据库开发的图书管理系统
- VC++使用ADO进行sql数据库操作收集
- VC++ 连接mysql数据库操作
评论
共有 条评论