我在建数据库时选了一张表book,现在相对表student进行更新,不知下面的语句有什么错误,系统提示说语法错误,各位大哥帮帮小弟吧,多谢了
CDatabase db;
db.Open( _T("ODBC;DSN=data"));

CString s;
//s=_T("");
s=_T("insert into [student] (stu_id,stu_name,address,phone_number) values('");
s+=_T(m_student_id);
s+=_T("','");
s+=_T(m_student_name);
s+=_T("','");
s+=_T(m_address);
s+=_T("','");
s+=_T(m_phone);
s+=_T("')"); db.ExecuteSQL(s);
db.Close();

解决方案 »

  1.   

    db.Open( _T("ODBC;DSN=data"));
    试试
    db.Open( _T("ODBC;DSN='data'"));
      

  2.   

    看不出什么错误[student] 去掉 [] 如何?
      

  3.   

    1、[student] 去掉 [] ,(在Accese中可以不去)
    2、是不是stu_id的类型和数据库中对应的类型(int)不对?
      

  4.   

    是单引号问题。单引号是一个非常陷蔽的BUG,在输入一般的英文字符可能不会有问题,一旦输入一些标点符号字符(如@、,和^等)时,系统就会出错。
    建议你将双引号中的字符串‘,’分开写试一下。
      

  5.   

    应该是表中字段类型不一致造成的,例如字段为数字类型,而你给他赋值时给值加了单引号。在你的表中字段stu_id是不是整型的?在给值时加了单引号,你看是不是这里的问题。