sql CString 转int 问题

 1 void LendAddEq::OnSureAddLend()
 2 {
 3     // TODO:  在此添加控件通知处理程序代码
 4     CString id, e_name,p_name,l_date,r_date;
 5
 6     lend_flag = "lending";
 7
 8     BOOL In = FALSE;
 9
10     CString sum_count;
11     CString c_name;
12     int count=0;
13
14     CString q;
15
16
17
18     GetDlgItemText(IDC_EDIT1, id);
19     GetDlgItemText(IDC_EDIT2, e_name);
20     GetDlgItemText(IDC_EDIT4, p_name);
21     GetDlgItemText(IDC_EDIT5, l_date);
22     GetDlgItemText(IDC_EDIT6, r_date);
23
24     rs.Open(CRecordset::forwardOnly, _T("SELECT * FROM equipment_table order by id Desc"));
25     while (!rs.IsEOF())
26     {
27
28         rs.GetFieldValue(L"equipment_name", c_name);
29         //AfxMessageBox(c_name);
30         if (c_name == e_name)
31         {
32             //if ()借走数量
33             rs.GetFieldValue(L"sum_count", sum_count);
34             AfxMessageBox(sum_count);
35             count = _ttoi(sum_count);
36             //AfxMessageBox(count);
37             if (count - 1 > 0)
38             {
39                 In = TRUE;
40                 count =count - 1;
41                 q.Format(L"%d", count);
42                 AfxMessageBox(q);
43                 break;
44             }
45
46         }
47         rs.MoveNext();
48     }
49     rs.Close();
50     if (In)
51     {
52         CString sql1;
53         sql1.Format(L"update equipment_table set count=‘%d‘ where equipment_name=‘%s‘", count, c_name);
54         db.ExecuteSQL(sql1);
55
56         CString sql;
57         sql.Format(_T("insert into lend_table (id, eq_name,people_name,flag,lend_date,return_date) values (‘%s‘,‘%s‘,‘%s‘,‘%s‘,‘%s‘,‘%s‘)"), id, e_name, p_name, lend_flag, l_date, r_date);
58         db.ExecuteSQL(sql);
59
60         AfxMessageBox(L"添加成功");
61         EndDialog(true);
62     }
63     else
64     {
65         MessageBox(L"实验室没有该设备!");
66     }
67 }

rs.GetFieldValue(L"sum_count", sum_count);    //读取数据
//AfxMessageBox(sum_count);
count = _ttoi(sum_count);       //CString转换int
//AfxMessageBox(count);

q.Format(L"%d", count);   //int再转为CString

终于解决了我更新数据库的问题

时间: 2024-10-12 16:38:15

sql CString 转int 问题的相关文章

MFC中CString和int的转换

 int转换为CString: CString csName; int num; csName.Format("%d", num); CString转换为int: CString csName; int num = atoi(csName);

[转载]C++ CString与int 互转

1.CString 转 int      CString strtemp = "100";    int  intResult;    intResult= atoi(strtemp);    -----------------------------------------------------------------    2 int 转 CString        CString strtemp;    int i = 2334;     strtemp.Format(&qu

SQL语句中 int 溢出 + Asp语句中 Long 溢出

晚上5点多,同事在QQ告诉我,一个用户向他反应,在他登录的时候显示错误信息,我们在管理平台查看该用户的基本信息时,也显示错误信息. 经过初步分析,原来是在执行 SQL语句的时候发生Int溢出: sql = "select sum(fileSize) as fsTotal from pic where userID = 1632" 本来这段SQL是用来取得一个用户之前上传的所有文件大小的合计数. fileSize 字段类型 int 当用户上传的文件累计大小超过 2G(2147483648

MFC,CString与int、double 转换

一.Cstring ---> double.int 在unicode字符集环境下: CString str; int a = _wtoi(str.GetBuffer()); double b = _wtof(str.GetBuffer()); 在多字节环境下: CString str; int a = atoi(str.GetBuffer()); double b = atof(str.GetBuffer()); 二.int.double--->CString int i=123; doubl

CString To Int

unsigned short TestCenter::CStringToHex(CString Text) { unsigned short retValue = 0; for (int i =0; i<Text.GetLength (); i++) { char ch = Text.GetAt (i); unsigned short tempValue = HexCharToInt(ch); retValue=retValue<<4; retValue+=tempValue; } re

VS2010 Cstring to int

今天遇到一个将Cstring转化为int的问题,用atoi(),发现不可以,找了一下原因. 原来因为在VS2015(2010)的版本中是UNICODE ,请使用这个函数 _ttoi() . CString str1 = _T("2"); int temp = _ttoi(str1);

sql语句对int类型进行模糊查询

重点:select * from course where cast(courseId as char) like '%118%'; 首先可以将int类型转换为string类型的值再进行模糊查询,用方法cast(num as char):这个可以将num(int类型)转化为char类型.完整的语句:假如我现在要在课程表(course)里面根据课程id(courseId)进行模糊查询:select * from course where cast(courseId as char) like '%

SQL 查询使用int去查询nvarchar字段

如下 使用2 去查询一个 用逗号分隔开的字段下  有这个id的数据,可以用到数据库的内置函数charindex去查询 select * from Users where charindex(','+'2'+',',','+RoleID+',')>0 列下是  循环得到 数据 字段为逗号分隔的所有数据 放到一个字符串里 declare @i intdeclare @u intdeclare @str nvarchar(max)set @i=1set @u=(select count(*) from

CString、char、int、string相互转化

相比于C#,C++的类型转换更为麻烦.下面列举几种主要的类型转换,当然转换的方法有很多,以下可能是最简单.有效的方式了,以后在工作和学习中再逐渐添加其他的类型转换. CString转char* CString file=GetFilePath()+"parameter.txt";    char* pszFileName=(LPSTR)(LPCTSTR)file; string转CString string str; CString ss = str.c_str(); int转CStr