数据库问题:FROM子句语法错误

try{Query1->SQL->Clear();Query1->Close();Query1->SQL->Add("SELECT编号,电压,电流,功率,温度FROMdb... try
{

Query1->SQL->Clear();
Query1->Close();
Query1->SQL->Add("SELECT 编号,电压,电流,功率,温度 FROM db1");

Query1->SQL->Add("INSERT INTO db1(编号,电压,电流,功率,温度) VALUES(10000,10,101,10,10)");
Query1->Prepare();

Query1->Open();

}
catch(Exception &E)
{
MessageDlg(E.Message, mtError,TMsgDlgButtons() << mbYes << mbNo, 0);
}
运行时总会出现FROM子句语法错误的提示,请问是为什么?
展开
 我来答
qiao_liu
2012-05-11 · TA获得超过421个赞
知道小有建树答主
回答量:173
采纳率:0%
帮助的人:242万
展开全部
SQL查询语句和Insert更新语句不能放一起执行,或者说,一次只能执行一条命令,你把两个语句放一起,编辑器就会误认为成一条命令,变成语句SELECT 编号,电压,电流,功率,温度 FROM db1INSERT INTO db1(编号,电压,电流,功率,温度) VALUES(10000,10,101,10,10),db1INSERT这个表名当然不存在,所以报FROM子句语法错误。

如果你想执行这两个语句,可以分开写。
比如先执行插入动作,再执行查询。
try
{
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add("INSERT INTO db1(编号,电压,电流,功率,温度) VALUES(10000,10,101,10,10)");
Query1->Prepare();
Query1->ExecSQL(); //针对更新,好像是这个,你确认一下
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add("SELECT 编号,电压,电流,功率,温度 FROM db1");
Query1->Prepare();
Query1->Open();
}
catch(Exception &E)
{
MessageDlg(E.Message, mtError,TMsgDlgButtons() << mbYes << mbNo, 0);
}

以上若还有疑问,可以及Hi我。
追问
恩,已经改好了,谢谢解答啊
qiminixi
2012-05-09 · TA获得超过819个赞
知道小有建树答主
回答量:552
采纳率:0%
帮助的人:235万
展开全部
from 后面接的表名把
更多追问追答
追问
db1就是表名吧,我用的是ACCESS,在Database1.mdb下建立的db1表
追答
你看看在access里能不能正确执行那条语句。错误的话看看access的提示。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式