.net连接Sybase的影响行数问题_Sybase_数据库_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 数据库 > Sybase > .net连接Sybase的影响行数问题

.net连接Sybase的影响行数问题

 2013/8/10 4:58:37    程序员俱乐部  我要评论(0)
  • 摘要:.net连接Sybase时,有时会遇到影响行数问题,下面就为您介绍一种.net连接Sybase的影响行数问题,如果您感兴趣的话,不妨一看。工作中的一个项目用到了.net连接Sybase数据库,肯定会用到执行sql语句返回影响函数,问题就出在这个上面,每次返回的影响行数总是比实际的多1,执行一个update,在SQLAdvantage中执行是影响0行,程序返回值偏偏是1,在SQLAdvantage影响了1行的时候,返回值又变成了2。不知道大家有没有遇到还是就是这个样子,下面是具体的代码:方法一
  • 标签:.net net 问题 连接 Sybase ASE

.net连接Sybase时,有时会遇到影响行数问题,下面就为您介绍一种.net连接Sybase的影响行数问题,如果您感兴趣的话,不妨一看。

工作中的一个项目用到了.net连接Sybase数据库,肯定会用到执行sql语句返回影响函数,问题就出在这个上面,每次返回的影响行数总是比实际的多1,执行一个update,在SQL Advantage中执行是影响0行,程序返回值偏偏是1,在SQL Advantage影响了1行的时候,返回值又变成了2。不知道大家有没有遇到还是就是这个样子,下面是具体的代码:

方法一:

    class="dp-xml">
  1. using Sybase.Data.AseClient;   
  2. AseConnection conn = new   
  3. AseConnection("PROVIDER=ASEOLEDB;Data Source=172.19.11.111:5000;User Id=sa;Password=sa;Initial Catalog=news;"); AseCommand cmd = new AseCommand("update record set filefile=file where column_id=300000", conn);   
  4. try   
  5. {  
  6.      conn.Open();     object o = cmd.ExecuteNonQuery();   
  7. }   
  8. catch (System.Exception ex)   
  9. {  
  10.      throw ex;   
  11. }   
  12. finally  
  13. {  
  14.      conn.Close();  
  15. }  
  16.  

方法二:

  1. OleDbConnection objConn = new   
  2. OleDbConnection("PROVIDER=ASEOLEDB;Data Source=172.19.11.111:5000;User Id=sa;Password=sa;Initial Catalog=news;");OleDbCommand objCmd = new OleDbCommand("update paper_record set layout_filelayout_file=layout_file where column_id=300000",objConn);  
  3. try  
  4. {  
  5.     objConn.Open();  
  6.     object haha = objCmd.ExecuteNonQuery();  
  7. }  
  8. catch (System.Exception ex)  
  9. {  
  10.     throw ex;}finally  
  11. {    objConn.Close();}  

上面的sql 语句无论怎么变化,受影响的行数都会比实际的多1。

.net连接Sybase的OLEDB连接字符串:

  1. PROVIDER=ASEOLEDB;Data Source=172.19.11.111:5000;User Id=sa;Password=sa;Initial Catalog=news;  
  2.  

发表评论
用户名: 匿名