您的位置:程序门 -> .net技术 -> vc.net



sql语句在access里面运行正确,在pdb->EXECutesql(strsql)运行不正确,为啥?


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


sql语句在access里面运行正确,在pdb->EXECutesql(strsql)运行不正确,为啥?
发表于:2007-03-07 09:56:25 楼主
cstring   zhuan= "table "+zhuanye;
cstring   slike=zhuanye+ "** ";
cdatabase   *pdb=new   cdatabase;
pdb-> open( "appraisement ");
cstring   strsql= "select   distinct   学号,   姓名   into   "+zhuan+ "   from   sce2007   where   班级   like   '231010** '   ";
  pdb-> EXECutesql(strsql);
  updatedata(false);
  pdb-> close();

还有我在这里添加try   catch   语句老是出错,哪位哥哥能给个demo?谢谢
发表于:2007-03-07 09:58:381楼 得分:0
select   distinct   学号,   姓名   into   newtable   from   sce2007   where   班级   like   '231010** '  

在access里面运行正确

但是在应用程序里面,只生成表,无记录............
发表于:2007-03-07 14:25:282楼 得分:0
try

cstring   strsql=_t( "select   distinct   学号,   姓名   into   "+zhuan+ "   from   sce2007   where   班级   like   '231010** '   ");
发表于:2007-03-07 14:52:213楼 得分:0
谢谢   hdt(倦怠)

cstring   strsql= "select   distinct   学号,   姓名   into   "+zhuan+ "   from   sce2007   where   班级   like   '231010* '   ";
pdb-> EXECutesql(_t(strsql));

和  

cstring   strsql=_t( "select   distinct   学号,   姓名   into   "+zhuan+ "   from   sce2007   where   班级   like   '231010* '   ");
pdb-> EXECutesql(strsql);

都不行.........

能创建表,但是添加不了记录

如果去掉where   子句则可以......

同时请教:
try
{

cstring   strsql= "select   distinct   学号,   姓名   into   "+zhuan+ "   from   sce2007   ";
pdb-> EXECutesql(strsql);

}
catch(cdbexception,e)
{
cstring   strmsg;
strmsg.loadstring(ids_EXECute_sql_failed);
strmsg+=strsql;
}

pdb-> close();

输出如下:
------   已启动生成:   项目:   appraisement,   配置:   debug   win32   ------

正在编译...
snew.cpp
d:\vc     work\appraisement\snew.cpp(89)   :   error   c2061:   语法错误   :   标识符“e”
d:\vc     work\appraisement\snew.cpp(89)   :   error   c2316:   “cdbexception”   :   无法作为析构函数捕获,或者复制构造函数不可访问,或同时出现这两种情况
d:\vc     work\appraisement\snew.cpp(92)   :   error   c2065:   “ids_EXECute_sql_failed”   :   未声明的标识符
d:\vc     work\appraisement\snew.cpp(93)   :   error   c2065:   “strsql”   :   未声明的标识符
d:\vc     work\appraisement\snew.cpp(93)   :   error   c2593:   “operator   +=”不明确
                d:\program   files\microsoft   visual   studio   .net   2003\vc7\atlmfc\include\cstringt.h(1082):   可能是“atl::cstringt <basetype,stringtraits>   &atl::cstringt <basetype,stringtraits> ::operator   +=(const   variant   &)”
                with
                [
                        basetype=char,
                        stringtraits=strtraitmfc_dll <char>
                ]
                d:\program   files\microsoft   visual   studio   .net   2003\vc7\atlmfc\include\cstringt.h(1075):   或               “atl::cstringt <basetype,stringtraits>   &atl::cstringt <basetype,stringtraits> ::operator   +=(wchar_t)”
                with
                [
                        basetype=char,
                        stringtraits=strtraitmfc_dll <char>
                ]
                d:\program   files\microsoft   visual   studio   .net   2003\vc7\atlmfc\include\cstringt.h(1068):   或               “atl::cstringt <basetype,stringtraits>   &atl::cstringt <basetype,stringtraits> ::operator   +=(unsigned   char)”
                with
                [
                        basetype=char,
                        stringtraits=strtraitmfc_dll <char>
                ]
                d:\program   files\microsoft   visual   studio   .net   2003\vc7\atlmfc\include\cstringt.h(1061):   或               “atl::cstringt <basetype,stringtraits>   &atl::cstringt <basetype,stringtraits> ::operator   +=(char)”
                with
                [
                        basetype=char,
                        stringtraits=strtraitmfc_dll <char>
                ]
                d:\program   files\microsoft   visual   studio   .net   2003\vc7\atlmfc\include\cstringt.h(1054):   或               “atl::cstringt <basetype,stringtraits>   &atl::cstringt <basetype,stringtraits> ::operator   +=(atl::csimplestringt <basetype,t_bmfcdll> ::pcystr)”
                with
                [
                        basetype=char,
                        stringtraits=strtraitmfc_dll <char> ,
                        t_bmfcdll=true
                ]
                d:\program   files\microsoft   visual   studio   .net   2003\vc7\atlmfc\include\cstringt.h(1041):   或               “atl::cstringt <basetype,stringtraits>   &atl::cstringt <basetype,stringtraits> ::operator   +=(atl::csimplestringt <basetype,t_bmfcdll> ::pcxstr)”
                with
                [
                        basetype=char,
                        stringtraits=strtraitmfc
_dll <char> ,
                        t_bmfcdll=true
                ]
                d:\program   files\microsoft   visual   studio   .net   2003\vc7\atlmfc\include\cstringt.h(1027):   或               “atl::cstringt <basetype,stringtraits>   &atl::cstringt <basetype,stringtraits> ::operator   +=(const   atl::cstringt <basetype,stringtraits> ::cthissimplestring   &)”
                with
                [
                        basetype=char,
                        stringtraits=strtraitmfc_dll <char>
                ]
                试图匹配参数列表“(cstring,   'unknown-type ')”时

生成日志保存在“file://d:\vc     work\appraisement\debug\buildlog.htm”中
appraisement   -   5   错误,0   警告


----------------------   完成   ---------------------

        生成:   0   已成功,   1   已失败,   0   已跳过


发表于:2007-03-07 14:53:144楼 得分:0
//   snew.cpp   :   实现文件
//

#include   "stdafx.h "
#include   "appraisement.h "
#include   "snew.h "
#include   ".\snew.h "
#include   "afxdb.h "
#include   "appraisementset.h "

//------------------------------------------
多谢!


快速检索

最新资讯
热门点击