| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2046 人关注过本帖
标题:access转sql2000后sql查询语句问题
取消只看楼主 加入收藏
lele2007
Rank: 5Rank: 5
来 自:广东省深圳
等 级:职业侠客
威 望:6
帖 子:1028
专家分:305
注 册:2007-9-4
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:10 
access转sql2000后sql查询语句问题
sql="select * from beian where year(l_Titme)&month(l_Titme)&day(l_Titme)="&year(now())&month(now())&day(now())&" order by l_id desc"

这个sql语句是access数据库。。查询当天的记录。可以成功执行。。换到sql2000后失效了。。我是直接在sql2000企业管理器里导入access数据库中的数据。。

l_Titme:这个字段本来想写:l_Time  不小心打多了一个t字变成了:l_Titme...一直没改。。呵呵

现在换到了sql2000后这句sql语句应该如何改才可以在sql2000里查询到今天提交的数据?

l_Titme里存的内容是:2009-10-14 18:23:43  在数据库是:  getdate()  默认值
搜索更多相关主题的帖子: 语句 查询 access sql 
2009-10-14 18:51
lele2007
Rank: 5Rank: 5
来 自:广东省深圳
等 级:职业侠客
威 望:6
帖 子:1028
专家分:305
注 册:2007-9-4
收藏
得分:0 
之前学习时用的是access。。。没用过sql2000。一时不知道怎么写


学习编程www.
2009-10-14 18:53
lele2007
Rank: 5Rank: 5
来 自:广东省深圳
等 级:职业侠客
威 望:6
帖 子:1028
专家分:305
注 册:2007-9-4
收藏
得分:0 
chenguoxing517  早上好。。

按你的直接换了。。可是查询结果与原sql语句相同。。

结果是:暂时没有今天新提交记录

执行了  else  语句后面的代码了。。

输出的sql语句为:select * from beian where year(l_Titme)+month(l_Titme)+day(l_Titme)=20091015 order by l_id desc

l_Titme内容是:提交时间: 2009-10-15 9:03:39   是今天的数据。。但查询失败了。

请问是哪里的问题?

[ 本帖最后由 lele2007 于 2009-10-15 09:11 编辑 ]

学习编程www.
2009-10-15 09:07
lele2007
Rank: 5Rank: 5
来 自:广东省深圳
等 级:职业侠客
威 望:6
帖 子:1028
专家分:305
注 册:2007-9-4
收藏
得分:0 
chenguoxing517  

谢谢。。这条语句可以了。。执行成功。。太好了!!呵呵

REPLACE(CONVERT(char, l_Titme, 111), '/', '')   这个感觉好陌生呃。。

学习编程www.
2009-10-15 10:16
lele2007
Rank: 5Rank: 5
来 自:广东省深圳
等 级:职业侠客
威 望:6
帖 子:1028
专家分:305
注 册:2007-9-4
收藏
得分:0 
看似乎是强制转换类型为char
replace 把  /  替换成  空。。
时间里好像没有 /  这个字符。

学习编程www.
2009-10-15 10:20
lele2007
Rank: 5Rank: 5
来 自:广东省深圳
等 级:职业侠客
威 望:6
帖 子:1028
专家分:305
注 册:2007-9-4
收藏
得分:0 
以下是引用aspic在2009-10-15 10:16:54的发言:

sql="select * from beian where year(l_Titme)&month(l_Titme)&day(l_Titme)="&year(GetDate())&month(GetDate())&day(GetDate())&" order by l_id desc"
aspic版主。。这个不行。。。  查询失败。。

学习编程www.
2009-10-15 10:24
lele2007
Rank: 5Rank: 5
来 自:广东省深圳
等 级:职业侠客
威 望:6
帖 子:1028
专家分:305
注 册:2007-9-4
收藏
得分:0 
以下是引用aspic在2009-10-15 10:26:05的发言:

不行我也不是版主啊 我是看到动网论坛里面有类似的 所以贴出来 没测试过
就快是了。。呵呵。你好热心帮助人 。。已经是版主了。。

谢了。。

学习编程www.
2009-10-15 10:29
lele2007
Rank: 5Rank: 5
来 自:广东省深圳
等 级:职业侠客
威 望:6
帖 子:1028
专家分:305
注 册:2007-9-4
收藏
得分:0 
以下是引用孤独冷雨在2009-10-15 10:27:40的发言:

sql="select * from beian where convert(varchar(10),l_time,120) =convert(varchar(10),getdate(),120)  order by l_id desc"
这个我测试了一下。。查询不到。。可能有跟我的转换有关系。。我的是从access转换成sql2000数据库的

学习编程www.
2009-10-15 10:31
lele2007
Rank: 5Rank: 5
来 自:广东省深圳
等 级:职业侠客
威 望:6
帖 子:1028
专家分:305
注 册:2007-9-4
收藏
得分:0 
以下是引用aspic在2009-10-15 10:28:39的发言:

sql="select * from beian where DateDiff(day, l_Titme, getdate()) = 0 order by l_id desc"这样呢


这个可以了。。这个能看懂。。。哈哈。。对比时间。。这个高。。

学习编程www.
2009-10-15 10:32
lele2007
Rank: 5Rank: 5
来 自:广东省深圳
等 级:职业侠客
威 望:6
帖 子:1028
专家分:305
注 册:2007-9-4
收藏
得分:0 
是的。。默认值是getdate()

提交后时间格式是:2009-10-15 9:37:06   类似这样的。。

我直接把sql语句替换过去。。点击没有反应。。应该是我程序出了问题。。

sql="select * from beian where convert(varchar(10),l_time,120) =convert(varchar(10),getdate(),120)  order by l_id desc"

convert(varchar(10),l_time,120)   不好意思。。这里错了。呵呵。。字段是:l_titme...。。呵呵。。

我一开始就说了嘛。。设计数据库时本来想写:l_Time  后来不小心打多了一个  t  变成了  l_Titme了。。程序写好后才发现就没改了。。

sql="select * from beian where convert(varchar(10),l_Titme,120) =convert(varchar(10),getdate(),120)  order by l_id desc"

刚我测试了一下。。这个也可以。呵呵。。

学习编程www.
2009-10-15 10:39
快速回复:access转sql2000后sql查询语句问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017828 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved