首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Access >

50分求解 jBuilder中用控件操作数据库有关问题

2012-02-19 
50分求解 jBuilder中用控件操作数据库问题我用QueryDataSet组件操作Access数据源,这条语句老是有问题。num

50分求解 jBuilder中用控件操作数据库问题
我用QueryDataSet组件操作Access数据源,这条语句老是有问题。   num是ParameterRow的一个参数名字。  
SELECT   books.book_name,borrow.borrow_date,customer.cust_name   FROM   books,borrow,customer   WHERE   books.book_id=borrow.book_id     and   customer.cust_id   =   borrow.cust_id     and     DateDiff( "d ",borrow.borrow_date,date(   ))> :num

看提示,应该是DateDiff( "d ",borrow.borrow_date,date(   ))的问题,但这条语句在Access中运行没有问题

[解决办法]
多表连接注意事项:


多个表连接时,每增加一个表,增加一对(),如下:


select
from ((A
inner join B on A.id=B.id)
inner join C on A.id=C.id)
inner join D on A.id=D.id


Access使用的是Jet-SQL,SQL Server使用的是T-SQL,两者用法上相差很大。


JET SQL 帮助(jet4 access2000)下载地址

http://www.access911.net/index.asp?board=8&recordid=75FAB71E&tt=
[解决办法]
--参考VBA处理方式,把参数连接到SQL串中:


Dim strSQL As String
Dim intDays As Integer

intDays = 5

strSQL = " SELECT books.book_name,borrow.borrow_date,customer.cust_name " _
& " FROM books, borrow, customer " _
& " WHERE books.book_id = borrow.book_id " _
& " and customer.cust_id = borrow.cust_id " _
& " and DateDiff( 'd ',borrow.borrow_date,date())> " & intDays
[解决办法]
估计是参数问题,到相应的语言版块去问吧。

热点排行