CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  其他数据库开发 >  VFP

VF+SQL的問題﹐請高手指教﹗

楼主clouli_clouli(ok)2004-11-04 10:55:22 在 其他数据库开发 / VFP 提问

在vf中  
  select   tablename(表名)  
  go   2(指針指示第二條記錄)  
  delete  
  現在我將原在vf里的表tablename复制到sql數据庫中。然后在VF中連接SQL數据庫  
  這樣﹐上面的程序應該怎樣改?  
  比如﹕  
  nhandle=sqlstringconnect("driver=sql   server;server=W2KDEVDG;uid=sa;pwd=726830;database=mrp")    
    =sqlprepare(nhandle,"delete   from   tablename   where....")  
    =sqlexec(nhandle)  
  原來要刪除的是第二條﹐或是第n條。但這條SQL語句的條件怎樣寫?  
   
  還有﹐在VF中  
  select   tablename  
    if   rlock()  
      replace   xx   with   yy    
      .....  
  這個rlock()是鎖定當前記錄。但不知道當前記錄是什么,用  
    =sqlprepare(nhandle,"update   tablename   set   xx=yy")  
    =sqlexec(nhandle)  
  這樣tablename表中的記錄全被改了。這怎么辦?  
  问题点数:0、回复次数:7Top

1 楼itzhiren(itzhiren)回复于 2004-11-04 11:07:10 得分 0

加上where条件控制不就行了Top

2 楼LAIYANGPJ(小丑)回复于 2004-11-04 11:11:30 得分 0

1.=sqlprepare(nhandle,"delete   from   tablename   where....")  
    ************  
  =sqlprepare(nhandle,"delete   from   tablename   where   recno()=n")  
  2.=sqlprepare(nhandle,"update   tablename   set   xx=yy")  
    这一句是加修改所有符合XX=YY的记录.要想有限制加上条件语句.  
  Top

3 楼clouli_clouli(ok)回复于 2004-11-04 11:18:50 得分 0

2.=sqlprepare(nhandle,"update   tablename   set   xx=yy")  
    这一句是加修改所有符合XX=YY的记录.要想有限制加上条件语句.  
   
  在這的條件是if   rlock()  
  在你不知道它鎖定哪一條記錄的時候﹐怎樣加上條件語語句?Top

4 楼clouli_clouli(ok)回复于 2004-11-04 11:23:44 得分 0

1.=sqlprepare(nhandle,"delete   from   tablename   where....")  
    ************  
  =sqlprepare(nhandle,"delete   from   tablename   where   recno()=n")  
   
  recno()=n是VF中的。而   sqlprepare(nhandle,"delete   from   tablename   where   recno()=n")  
  語句中的delete   from   tablename   where   recno()=n是SQL語句﹐不能用recno()=Top

5 楼LAIYANGPJ(小丑)回复于 2004-11-04 12:58:47 得分 0

=sqlprepare(nhandle,"delete   from   tablename   where   recno()=n")  
  不好意这个语句没测试真的用不了等楼下解决吧.  
  =sqlprepare(nhandle,"update   tablename   set   xx=yy")  
  这个你即然不知道它的条件,别人也没办法.  
  不过远程数据的更新最好用事务更新.要嘛全部成功要嘛全部失败.  
  Top

6 楼cxmcxm(小陈)回复于 2004-11-06 21:58:46 得分 0

sql   server不支持记录号,不能用where第几条记录,  
  如果表在sql   server中需添加,修改,删除,而原vfp中无有效的字段可在sql   server中作为主键,在sql   server中应添加一字段作为主键,以此主键检索记录。  
  Top

7 楼koomis()回复于 2004-11-07 09:02:59 得分 0

首先在数据表中创建一个自增长的字段ID   数据类型为INT   步长1  
  然后就可以使用   delete   from   table   where   id=<n>   这样的语句来删除记录了.Top

相关问题

  • VF+SQL中的触发器问题
  • 如何把VF数据库转换为SQL数据库?
  • VF+SQL形式的程序中一对多连结的问题?
  • VF+SQL形式的程序中Stored_Procedures的问题?
  • VF+SQL(前台+后台)形式的程序。
  • vf中如何用sql实现一对3个表左连接
  • 在VF+SQL的程序中如何刷新Remote Views中数据
  • 如何把VF的表导入SQL SERVER的数据库???
  • 请教在C#中怎样从VF向SQL Server中导数据
  • SQL???

关键词

  • 语句
  • 字段
  • 修改
  • sql
  • server
  • nhandle
  • sqlprepare
  • 記錄
  • vf
  • recno

得分解答快速导航

  • 帖主:clouli_clouli

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo