select * into from 语句的问题

编译环境是vs2010我已经在stdafx.h#import"C:/ProgramFiles/CommonFiles/system/ado/msadox.dll"#imp... 编译环境是 vs2010
我已经在stdafx.h
#import "C:/Program Files/Common Files/system/ado/msadox.dll"
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF")

我自己网上看资料,写了一段程序,目的就是把一个表的字段,复制到另一个新建的表,程序如下:
void DataDiscretize::OnBnClickedButtonSaveresult()
{
// TODO: 在此添加控件通知处理程序代码
// 新表 命名为DiscretizeResult;
CString TarTableName =(CString)"DiscretizeResult";
CString DBName="Provider=Microsoft.JET.OLEDB.4.0;Data source=ExpertDB.mdb";
SaveResult(DBName,m_sSampleTableName,TarTableName);
}

void DataDiscretize::SaveResult(CString DBName,CString OriTable,CString TargetTable)// 把选择的表的结构信息复制到目标表里面,首先要创建目标表;
{
/*******************************

*******************************/
_ConnectionPtr m_pConnection;
_variant_t RecordsAffected;
try
{
m_pConnection.CreateInstance(__uuidof(Connection));
m_pConnection->Open(_bstr_t(DBName),"","",adModeUnknown);
}
catch(_com_error e)
{
CString errormessage;
errormessage.Format("连接数据库失败!/r错误信息:%s",e.ErrorMessage());
AfxMessageBox(errormessage);
return;
}

CString TableName;
TableName = (CString)"select * from" + OriTable;// 从数据库中找到名为oriTable的表;
//char *p = (LPSTR)(LPCTSTR)TableName;
//linkdb(p);//这句是判断是否连接成功;
select * into TargetTable from TableName where 1>2 ;//只复制结构和字段 TableName 是自动新建的表名
}

错误提示如下:
1>d:\work\classifier\nbc\nbc\datadiscretize.cpp(655): error C2065: “into”: 未声明的标识符
1>d:\work\classifier\nbc\nbc\datadiscretize.cpp(655): error C2146: 语法错误: 缺少“;”(在标识符“TargetTable”的前面)
1>d:\work\classifier\nbc\nbc\datadiscretize.cpp(655): error C2146: 语法错误: 缺少“;”(在标识符“from”的前面)
1>d:\work\classifier\nbc\nbc\datadiscretize.cpp(655): error C2065: “from”: 未声明的标识符
1>d:\work\classifier\nbc\nbc\datadiscretize.cpp(655): error C2146: 语法错误: 缺少“;”(在标识符“TableName”的前面)
1>d:\work\classifier\nbc\nbc\datadiscretize.cpp(655): error C2146: 语法错误: 缺少“;”(在标识符“where”的前面)
1>d:\work\classifier\nbc\nbc\datadiscretize.cpp(655): error C2065: “where”: 未声明的标识符
1>d:\work\classifier\nbc\nbc\datadiscretize.cpp(655): error C2143: 语法错误 : 缺少“;”(在“常量”的前面)
展开
 我来答
x403879785
推荐于2018-04-21 · TA获得超过3839个赞
知道大有可为答主
回答量:1299
采纳率:100%
帮助的人:1178万
展开全部
select * into TargetTable from TableName where 1>2 这个语法没错、
sqlserver中 可以用来创建新的表、同原来结构和字段。后面的条件1<2的话、
会将from 的表中的数据也弄到 into的表中。
select * into TargetTable from TableName where 1>2 ;//
后面那个顿号应该是半角的、你全角啊。
还有、sql语句能直接这样用吗?
数据库系统(查询分析器、企业管理器)里可以这样用。
前台你确定能直接只写一句sql语句不错误吗?
凉生雅康
2018-11-30
知道答主
回答量:1
采纳率:0%
帮助的人:806
展开全部
select * into TargetTable from TableName where 1=2
把原表的字段复制新创建的表,不会复制数据。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
min565220
2011-12-04 · 超过20用户采纳过TA的回答
知道答主
回答量:108
采纳率:0%
帮助的人:44.9万
展开全部
select * into TargetTable from TableName where 1>2 这种写法应该有错吧
更多追问追答
追问
有错吗?  那错在哪里啊?
追答
into TargetTable ?是什么意思   你是联表查询?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式