📄 mssql.h
字号:
#include "windows.h"
#include "odbcinst.h"
#include"sql.h"
#include"sqlext.h"
#include"Sqltypes.h"
class SaveToDb
{
public:
SaveToDb();
~SaveToDb();
int Save(CString sen);
private:
SQLHENV m_Henv; //环境句柄
SQLHDBC m_Hdbc; //连接句柄
SQLHSTMT m_Hstmt; //语句句柄
SQLRETURN m_Result; //返回句柄
};
SaveToDb::SaveToDb()
{
CString m_strExePath;
//private:
char path[MAX_PATH] = {'\0'};
GetModuleFileName(NULL,path,MAX_PATH);//得到执行文件名
m_strExePath.Format("%s", path);
int iPosition;
iPosition = m_strExePath.ReverseFind('\\');
m_strExePath = m_strExePath.Left(iPosition + 1);
CString strAccessPath = m_strExePath + "sentence.mdb";
int iLen =strAccessPath.GetLength();
char cpConfig[MAX_PATH];
strcpy(cpConfig,"DSN=sentence\0");
strcpy(cpConfig+13,"DBQ=");
strcpy(cpConfig+17,strAccessPath);
strcpy(cpConfig+17+iLen,"\0");
strcpy(cpConfig+18+iLen,"DEFAULTDIR=");
strcpy(cpConfig+18+iLen+11,m_strExePath);
strcpy(cpConfig+28+iLen+m_strExePath.GetLength(),"\0\0");
if(!SQLConfigDataSource( NULL, ODBC_ADD_DSN,
"Microsoft Access Driver (*.mdb)\0",cpConfig))
{
AfxMessageBox("失败!");
}
//初始化环境
SQLAllocHandle(SQL_HANDLE_ENV,SQL_NULL_HANDLE,&m_Henv);
SQLSetEnvAttr(m_Henv,SQL_ATTR_ODBC_VERSION,(void*)SQL_OV_ODBC3,0);
//建立连接
SQLAllocHandle(SQL_HANDLE_DBC,m_Henv,&m_Hdbc);
//m_Result=SQLConnect(m_Hdbc,(LPBYTE)"测试数据库",SQL_NTS,(LPBYTE)""/*用户名*/,SQL_NTS,(LPBYTE)""/*密码*/,SQL_NTS);
m_Result=SQLConnect(m_Hdbc,(LPBYTE)"sentence",SQL_NTS,(LPBYTE)""/*用户名*/,SQL_NTS,(LPBYTE)""/*密码*/,SQL_NTS);
//分配一个语句句柄
SQLAllocHandle(SQL_HANDLE_STMT,m_Hdbc,&m_Hstmt);
}
int SaveToDb::Save(CString sen)
{
char buffer[8];
sprintf(buffer, "%d",sen.GetLength());
CString len(buffer);
CString sql;
sql="insert into sentence values(\'";
sql+=sen;
sql+="\',\'";
sql+=len;
sql+="\');";
SQLCHAR *Psql;
Psql=(unsigned char *)sql.GetBuffer(sql.GetLength ());
m_Result=SQLExecDirect(m_Hstmt,Psql,SQL_NTS);
return 1;
}
SaveToDb::~SaveToDb()
{
//释放各个变量
SQLFreeHandle(SQL_HANDLE_STMT,m_Hstmt);
SQLDisconnect(m_Hdbc);
SQLFreeHandle(SQL_HANDLE_DBC,m_Hdbc);
SQLFreeHandle(SQL_HANDLE_ENV,m_Henv);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -