欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → 数据库问题!!请问高手问题出在哪里?

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有6667人关注过本帖树形打印复制链接

主题:数据库问题!!请问高手问题出在哪里?

帅哥哟,离线,有人找我吗?
patrick
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:32 积分:0 威望:0 精华:0 注册:2013/10/17 12:46:14
数据库问题!!请问高手问题出在哪里?  发帖心情 Post By:2014/1/13 14:58:17 [只看该作者]

DATABASE('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\test.mdb');
//DBEXECUTE('create table guzhiif00(stockdate date ,品种 char,Kday char,vclose double)');
//DBEXECUTE('insert into guzhiif00(stockdate,品种,Kday,vclose) values(now(),'&numtostr(STKname(),0)&','&numtostr(ymdt,2)& ','&numtostr(close,2)&')');

xx:=MONTH();
yy:=YEAR();
zz:=DAY();
tt:=TIME();
ymdt:=(((yy*100+xx)*100)+zz)*1000000+tt;
//ym:=numtostr(ymdt,0);
DBTABLE('Select * From guzhiif00 where Kday="ymdt"');
ss:DBVALUE('vclose');
出现解释错误,为什么会这样?????
如果这样DBTABLE('Select * From guzhiif00 where Kday="20131222091600"');就可以正解显示。为什么???

 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2014/1/13 15:00:29 [只看该作者]

你还没搞清楚,数值与字符串变量的区别
 
DBTABLE('Select * From guzhiif00 where Kday="'&numtostr(ymdt,0)&'"');
[此贴子已经被作者于2014/1/13 15:00:37编辑过]


金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
patrick
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:32 积分:0 威望:0 精华:0 注册:2013/10/17 12:46:14
  发帖心情 Post By:2014/1/13 15:21:47 [只看该作者]

真是还没搞懂,可还是不行,提示”字符串的语法错误在查询表达式“Kday=”中。

 回到顶部
帅哥哟,离线,有人找我吗?
patrick
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:32 积分:0 威望:0 精华:0 注册:2013/10/17 12:46:14
  发帖心情 Post By:2014/1/13 15:33:12 [只看该作者]

ym:=numtostr(ymdt,0);
DBTABLE('Select * From guzhiif00 where Kday="ym"');

DBTABLE('Select * From guzhiif00 where Kday="'&numtostr(ymdt,0)&'"');
这两句我也试过了,真没搞懂啊!!!!问题出在哪里?王老师。



 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2014/1/13 17:59:28 [只看该作者]

sss:='Select * From guzhiif00 where Kday="'&numtostr(ymdt,0)&'"';
msgout(1,sss);

 

通过增加调试语句输出,没发现字符串查询语句有什么不正常



金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
patrick
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:32 积分:0 威望:0 精华:0 注册:2013/10/17 12:46:14
  发帖心情 Post By:2014/1/14 14:13:14 [只看该作者]

输出调试是正常,但还是报错。代码也没有发现错误啊。什么原因????
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20140114140938.jpg
图片点击可在新窗口打开查看
DATABASE('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\test.mdb');
//DBEXECUTE('create table guzhiif00(stockdate date ,品种 char,Kday char,vclose double)');
//DBEXECUTE('insert into guzhiif00(stockdate,品种,Kday,vclose) values(now(),'&numtostr(STKname(),0)&','&numtostr(ymdt,2)& ','&numtostr(jyds,2)&')');

xx:=MONTH();
yy:=YEAR();
zz:=DAY();
tt:=TIME();
ymdt:=(((yy*100+xx)*100)+zz)*1000000+tt;
ym:=numtostr(ymdt,0);
//DBTABLE('Select * From guzhiif00 where Kday="20140107092000"');

DBTABLE('Select * From guzhiif00 where Kday="'&numtostr(ymdt,0)&'"');
ss:DBVALUE('vclose');
//sss:='Select * From guzhiif00 where Kday="'&numtostr(ymdt,0)&'"';
//msgout(1,sss);

 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2014/1/14 15:59:33 [只看该作者]

你直接把打印出来的字符串粘贴到数据库语句中,看看是不是还报错


金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
patrick
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:32 积分:0 威望:0 精华:0 注册:2013/10/17 12:46:14
  发帖心情 Post By:2014/1/15 11:19:55 [只看该作者]

也没有出错啊

 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2014/1/15 11:42:48 [只看该作者]

你还是仔细调试一下吧,从数据库返回报错情况来看,应该是字符串的格式出了问题



金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
guotx2010
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蜘蛛侠 帖子:1366 积分:5210 威望:0 精华:7 注册:2010/12/11 18:00:33
  发帖心情 Post By:2014/1/15 16:15:07 [只看该作者]

日期型字段,在Access中需要用#的,比如:#2014-1-15#,你试试看

 回到顶部
总数 24 1 2 3 下一页