我的骨灰级问题!(0分)

S

skymean

Unregistered / Unconfirmed
GUEST, unregistred user!
昨天我问了个最菜的问题,今天我问一个我自认为是"骨灰级"的问题:
(我可是只老菜鸟哦!)
我用delphi的ADO编程过程中使用ACCESS数据库,其中有一个字段(年)是日期型字段
我用这个语句对年进行检索,不起作用,可是其他字段全部都起作用,是怎么回事呢?
Form1.ADOQuery1.SQL.Text:='select * from supertable where 年=1900-1-1';
而数据库中确实有1900-1-1这个值.
另外,为什么我在win2000sever中编译通过的数据库程序在win98中运行,提示找不到数据源等.
ADOConnectionString如下:
Provider=MSDASQL.1;Persist Security Info=False;User ID=ad;
Extended Properties="DBQ=supercalendar.mdb;DefaultDir=.;
Driver={Driver do Microsoft Access (*.mdb)};DriverId=25;
FIL=MS Access;FILEDSN=supertest.dsn;MaxBufferSize=2048;
MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;
UID=admin;UserCommitSync=Yes;"
请高高手指教!!
 
在access中
SQL.Text:='select * from supertable where 年=#1900-1-1#';
 
日期型加##这是Access的格式
这种问题应该先看帮助,帮助里就有这样的例子
 
无疯无禄,你太厉害了!
可是:
另外,为什么我在win2000sever中编译通过的数据库程序在win98中运行,提示找不到数据源等.
ADOConnectionString如下:
Provider=MSDASQL.1;Persist Security Info=False;User ID=ad;
Extended Properties="DBQ=supercalendar.mdb;DefaultDir=.;
Driver={Driver do Microsoft Access (*.mdb)};DriverId=25;
FIL=MS Access;FILEDSN=supertest.dsn;MaxBufferSize=2048;
MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;
UID=admin;UserCommitSync=Yes;"
请高高手指教!!
还没帮我解决?
 
'select * from supertable where 年='+#39+'1900-01-01'+#39
第二个问题检查一下数据库的路径问题,请不要用绝对路径,最好把数据库放于同一目录下,
再用相对路径!
 
用建一个Udl文件来试一下联接字符
 
Provider=MSDASQL.1;Persist Security Info=False;User ID=ad;
Extended Properties="DBQ=supercalendar.mdb;DefaultDir=.;
Driver={Driver do Microsoft Access (*.mdb)};DriverId=25;
FIL=MS Access;FILEDSN=supertest.dsn;MaxBufferSize=2048;
MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;
UID=admin;UserCommitSync=Yes;"

这里用的是相对路径啊!
不是绝对路径!
好象没答到点子上哦!
 
Win2000下与Win98下的驱动可能不一致所致,以前做过Foxpro的Win2000下运行得很好,
但是Win98下不能运行,将Win2000下的驱动覆盖98下的即可运行!
 
怎么搞?to joysun?
怎么覆盖,操作过程
 
ADO版本的问题
 
to 张无忌,
那怎么解决?
 
to张无忌:
机会难得,再请教你一个问题:我想通过读配置文件来控制程序的隐藏与否,应在哪个事件中
编程?
比如:配置文件中读到true,则程序一启动便自动隐藏,而读到false则显示.
 
在注册表HKEY_LOCAL_MACHINE/SOFTWARE/ODBC/ODBC.INI/下面你会看到ODBC的所有驱动,
其中有一项记录了你所用的Acess的驱动“Driver do Microsoft Access (*.mdb)”,
在这一项下面有一项记录了驱动程序的文件及版本号,一般为system32/odbcjt32.dll.
如果win98下与win2000下该文件版本不一致,可能会导致你所说的问题!
 
我认为你可以安装一下ADO看看。比如MDAC。
http://www.microsoft.com/data/
 
98一般都那原因,没安装数据库驱动程序。
另外一个方法可以这样,
在这部98的机装个你用的这个版本的OFFICE(含ACCESS),应该就好了。
当然装MDAC就更简单了。
 
好,我试试MDAC
 
你可以看一下ADO版本。98上一般是ADO2.1,而2000上一般都是ADO2.5,如果装了
SQL Server2000则会升级成ADO2.7,你看看你的ADO版本是否是统一的。
 
顶部