S silverwolf Unregistered / Unconfirmed GUEST, unregistred user! 2002-04-01 #1 我用Query查训数据库(*.DB)后,如何将所选的信息从数据库里删除? 每次我做del,update操作时(用SQL语句),为何系统总是提示ataSet Read Only.
完 完颜康 Unregistered / Unconfirmed GUEST, unregistred user! 2002-04-01 #4 你是写Sql语句的吗?要用exesql方法 如果是insert ;post的话,设置requestlive := True;
K kingdeezj Unregistered / Unconfirmed GUEST, unregistred user! 2002-04-01 #6 如果你的TQUERY中SQL语句涉及到多个表的话,建议用UPDATESQL控件。
H hbezwwl Unregistered / Unconfirmed GUEST, unregistred user! 2002-04-01 #7 就是完颜康的后一种情况吧. query.requestlive:=true就行了.
S silverwolf Unregistered / Unconfirmed GUEST, unregistred user! 2002-04-01 #8 我做的是单表查询. 表(*.db)应该没有锁,因为我根本不知道如何锁,呵呵.如果默认设置是锁的,请说一下 如何解锁. dit用过,不管用.当然比没加还是有区别的加的错误是(Query1:Cannot modify a read-only dataset)不加的时候是Error creating cursor handle(设置requestlive 时同此),不过却可以修改成功 那位能够高手能告知原因,请举个具体的例子(能用的),不胜感激. 补充一句:执行SQL好像是execsql或者是open;
我做的是单表查询. 表(*.db)应该没有锁,因为我根本不知道如何锁,呵呵.如果默认设置是锁的,请说一下 如何解锁. dit用过,不管用.当然比没加还是有区别的加的错误是(Query1:Cannot modify a read-only dataset)不加的时候是Error creating cursor handle(设置requestlive 时同此),不过却可以修改成功 那位能够高手能告知原因,请举个具体的例子(能用的),不胜感激. 补充一句:执行SQL好像是execsql或者是open;
天 天真 Unregistered / Unconfirmed GUEST, unregistred user! 2002-04-01 #9 你是直接改的,不用INSERT INTO 或UPDATE??? adoconnection1.mode有没有改过?
P Pipi. Unregistered / Unconfirmed GUEST, unregistred user! 2002-04-01 #10 如果你使用了order by,那么需要index那些列
S silverwolf Unregistered / Unconfirmed GUEST, unregistred user! 2002-04-02 #11 我是用SQL语句修改的,没有order by 而且所做的程序只涉及的DBGrid,Query,DataSource各一个。 是个很奇怪的现象对不? 原来众位大大是如何删除数据库中选定的数据?
荷 荷塘新月 Unregistered / Unconfirmed GUEST, unregistred user! 2002-04-02 #12 这应该是个小问题,看看控件的属性,楼上的大侠也说了许多。
Y Yumpar Unregistered / Unconfirmed GUEST, unregistred user! 2002-04-02 #14 动态创建或则专门一个query,完成删除,记得将requestlive 设为True
Z zhai_xin Unregistered / Unconfirmed GUEST, unregistred user! 2002-04-02 #16 你看你的*.DB是不是只读?! 你用DbGrid的时候,是否正在编辑某条记录,加锁有时候是自动的,不一定需要你操作!
S silverwolf Unregistered / Unconfirmed GUEST, unregistred user! 2002-04-02 #18 谢谢诸位,问题解决了,完颜康大大的答案是正确的,由于我一贯以为 execsql和open的功能一样,所以……不好意思了,今天查书的时候发现 自己错了. 顺便将区别摘录如下: execsql与open区别如下:当一个select sql时,Query的结果是一个结果集 ,故可以用open,当执行一个insert,delete,update,create table,drop table 等非select操作(不返回一贯结果数据集)的时候,须使用execsq
谢谢诸位,问题解决了,完颜康大大的答案是正确的,由于我一贯以为 execsql和open的功能一样,所以……不好意思了,今天查书的时候发现 自己错了. 顺便将区别摘录如下: execsql与open区别如下:当一个select sql时,Query的结果是一个结果集 ,故可以用open,当执行一个insert,delete,update,create table,drop table 等非select操作(不返回一贯结果数据集)的时候,须使用execsq