我很同情你,我也在找单机版或免费的小的关系型数据库,sql server是很不错,但是太大了,而且很贵。paradox肯定不行拉,很多标准sql语法是用不了的。
解决方案 »
- 如果给com对象传递对象参数?
- 该不该抛弃VCL?
- 用两个Tadoquery控件如何实现两个表的关联?
- ???如何判断是否安装SQL server 2000 数据库???
- 如何用sql语句表里增加一个字段。或如何在delphi中实现
- Invalid Pointer operation
- 请教高手,‘circular unit reference to’是如何造成的?(对单元[UNITNAME]循环引用)
- 新手请教两个数据库的问题!
- 请问初学Delphi 看什么书好?
- 向各位大虾请教
- 數據庫的‘字段’設為‘日期/時間’格式的話,不能為空的嗎?
- 安装mdac_typ_2.6_CN.exe后出现“bof或eof中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录”错误,请教各位。
据说paradox有填补数据空洞的功能,不过不严格,比较随意
sqlanywhere怎样啊,很稳定
小数据库就是这样的,很多事情都要自己操心,同情 :)
我对索引没什么研究,请问为什么要建四个啊,有何技巧?
好
我用的是5.5
var number:string
if application.messagebox('确认删除?','确认框',49)= 1 then
iddata:=query1.fieldbyname('number').asstring;
query2.close;
query2.sql.clear;
query2.sql.add('delete from chayue where number=strtoint(iddata)');
query2.execsql;
为什么出错,说什么性能不支持!
其中number是paradox表中的自增长型字段。
建索引的原则是对经常要查询的字段建立索引,当然这个字段的值不能太单一,比如象"男/女"就没有必要.索引分聚镞索引和非聚镞索引,每个表只能有一个聚镞索引,聚镞索引是安装表中数据的物理位置来排列的.
理论上,索引可以加快查询速度,但却会减慢更新速度(入insert).
至于你说的建四个索引,当然要看需要了.
我用delphi工作第一次就用paradox
,结果把我折磨得快受不了啦,一开始用query,RequestLive为true
别人用着用着就完了,记录也添加不进去了,后来设它CachedUpdates为true
设了个主索引,别人用着用着也不好使,好像是主索引老丢,我一直以为我的程序
有毛病,信心全无,唉。
现在换了access,好象比paradox稳定些
var iddata:string
iddata:=query1.fieldbyname('number').asstring;
query2.close;
query2.sql.clear;
query2.sql.add('delete from chayue where number=+strtoint(iddata)+');
query2.execsql;
为什么出错?
其中number是paradox表中的自增长型字段。 query2对query1查询出的记录作删除操作。
var iddata:string
iddata:=query1.fieldbyname('number').asstring;
query2.close;
query2.sql.clear;
query2.sql.add('delete from chayue where number='+iddata); //我觉得这样是对的吧,你何必转换什么呢?
query2.execsql;
再一个示例:
Query_testRec->SQL->Clear();
Query_testRec->SQL->Add("select * from tbTestRec");
Query_testRec->SQL->Add("where ProID=:Prj_id");
Query_testRec->ParamByName("Prj_id")->AsInteger=ID_prj;
Query_testRec->Prepare(); //leewa 1101 Query_testRec->Open();
网络:SQL Server
唉,又得重来了....:(
麻烦点
iddata:=IntToStr(query1.fieldbyname('number').asinteger);
Try it...
如果可能联网的话,使用SQL Server。
在Windows系统下,肯定是很稳定的。
iddata:=query1.fieldbyname('number').asstring;
query2.close;
query2.sql.clear;
query2.sql.add('delete chayue where number='+iddata);
query2.execsql;
try it again!!!
requestlive不是好东东
做个real programer 不能太懒 自己也要多做一些,不要一味依赖开发工具
我 认为appendrecord 比用insert into 要快N倍,当然是对于paradox,dbf之类
又支持事务、触发器、存储过程,实现过程中比较灵活,也不用担心数据量
或者用msde,是mssql桌面版的精简版本,
也就20多M,和mssql一模一样,只是没有enterprise manager,可以适合安装到客户端时使用
至于msde,可以到微软站点下栽
使用ado,当然也不会有任何问题的
两位好!请问sql anywhere 与delphi怎么连?运行时该如何启动sql anywhere的服务?谢!
或者Access+ADO更好
那我就告诉他,出了问题别来这求救!
PARADOX是性能不太好不过不要钱嘛
至于你说的问题容易解决它不支持的可以想办法嘛
我最烦它容易损坏而且不能自己修复速度也太慢
唉没办法先这么着吧
以后开发全部使用ADO
还是使用ttable比较好
我用了挺顺手的
不过使用的table很多
里面的 long integer 妈的在SQL里面不能赋值!
那天这写了个 出勤天数=25
出勤天数 long integer
竟然不行
改为N型就没事了 我一直没有想清楚!!!!!!!!!!
---------在ACCESS中,是与否的类型是用什么来表示的,我在查询时要用上。where 字段=true好象不行,而在paradox中是支持的。///////////////////答完结束。