以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  为什么以下语句不能正常插入到数据库中?  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=48466)

--  作者:淡月映梅
--  发布时间:2013/2/6 10:02:38
--  为什么以下语句不能正常插入到数据库中?

DATABASE(\'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\test.mdb\');
 DBEXECUTE(\'insert into tradedetail(StockDate,StrId,StrName,StockCode,MyHoldings,ProfitTarget) values (now(),"zzsd","pursuev2-rb","xx",\' + numtostr(0,0) + \',\' + numtostr(dynainfo(7),2) + \')\');
 DBEXECUTE(\'insert into tradedetail(StockDate,StrId,StrName,StockCode,MyHoldings,ProfitTarget,Action) values (now(),"zzsd","pursuev2-rb","x2x",\' + numtostr(0,0) + \',\' + numtostr(dynainfo(7),2) + \',"Sell")\');

 

 

以上一段代码,为什么第一个dbexecute可以插入到数据库中,而第二个dbexecute语句不能插入?表的设计如附图


图片点击可在新窗口打开查看此主题相关图片如下:111.png
图片点击可在新窗口打开查看


--  作者:jinzhe
--  发布时间:2013/2/6 10:11:35
--  
帮你转到高级区吧
--  作者:rushtaotao
--  发布时间:2013/2/6 10:32:02
--  

http://www.weistock.com/bbs/dispbbs.asp?BoardID=10&ID=30666&skin=0

按照这个帖子  自查下,看下是否能找到问题。


--  作者:rushtaotao
--  发布时间:2013/2/6 10:34:29
--  

stockdate的格式用日期型 试试


--  作者:淡月映梅
--  发布时间:2013/2/6 11:06:22
--  

把stockdate的格式换成日期型的也不行,看了那个网页,也不知道是哪里错了,毕竟为什么第一句可以插入成功,而第二句dbexecute却不可以,这很纳闷。


图片点击可在新窗口打开查看此主题相关图片如下:222.png
图片点击可在新窗口打开查看

--  作者:淡月映梅
--  发布时间:2013/2/6 11:43:17
--  
我把action字段名改了,突然就可以了,好奇怪啊?这是为什么?
--  作者:王锋
--  发布时间:2013/2/6 12:40:29
--  

用ACCESS数据库,要注意很多字段名是ACCESS保留字。

建议在字段名上加 [] 符号括起来,这样更加安全