CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

我不能把数据加到数据库。各位老大救救急!

楼主kscode(坐到天亮)2004-07-01 11:53:59 在 .NET技术 / C# 提问

为什么我怎么都加进数据呢?我在WEB页已经生成了一个表。六个字段。通过ADD(DT)方法调用添加数据。可怎么都加不进。  
  过程1:CREATE   PROCEDURE   dbo.insertSal  
  (  
  @ComName   varchar(20),  
  @ComID   varchar(20),  
  @Price   smallmoney,  
  @Con   int,  
  @momey   smallmoney,  
  @buyerName   varchar(20)  
  )  
  AS  
  SET   NOCOUNT   OFF;  
  INSERT   INTO   netSales(ComName,   ComID,   Price,   Con,   momey,   buyerName)   VALUES   (@ComName,   @ComID,   @Price,   @Con,   @momey,   @buyerName);  
  SELECT   ComName,   ComID,   Price,   Con,   momey,   buyerName   FROM   netSales  
  GO  
   
  过程2:CREATE   PROCEDURE   dbo.selectSal  
  AS  
  SET   NOCOUNT   ON;  
  SELECT   ComName,   ComID,   Price,   Con,   momey,   buyerName   FROM   netSales  
  GO  
   
  代码:  
  public   AdsalData()  
  {  
  this.cnn=new   SqlConnection();  
  this.cnn.ConnectionString="server=KONG;database=ksh;uid=sa;pwd=";  
  }  
  public   void   add(System.Data.DataTable   DT)  
  {  
  this.cnn.Open();  
  this.cmd=new   SqlCommand("insertSal",cnn);  
  this.cmd.CommandType=CommandType.StoredProcedure;  
  this.cmd1=new   SqlCommand("selectSal");  
  this.cmd1.CommandType=CommandType.StoredProcedure;  
  this.cmd1.Connection=this.cnn;  
  this.sda=new   SqlDataAdapter();  
   
  this.sda.TableMappings.AddRange(new   System.Data.Common.DataTableMapping[]   {  
      new   System.Data.Common.DataTableMapping("Table",   "netSales",   new   System.Data.Common.DataColumnMapping[]   {…..   省略})});  
   
   
  this.sda.InsertCommand=this.cmd;  
  this.sda.SelectCommand=this.cmd1;  
  this.cmd1.Parameters.Add(new   System.Data.SqlClient.SqlParameter("@RETURN_VALUE",   System.Data.SqlDbType.Int,   4,   System.Data.ParameterDirection.ReturnValue,   false,   ((System.Byte)(0)),   ((System.Byte)(0)),   "",   System.Data.DataRowVersion.Current,   null));  
   
  this.cmd.Parameters.Add(new   System.Data.SqlClient.SqlParameter("@RETURN_VALUE",   System.Data.SqlDbType.Int,   4,   System.Data.ParameterDirection.ReturnValue,   false,   ((System.Byte)(0)),   ((System.Byte)(0)),   "",   System.Data.DataRowVersion.Current,   null));  
  this.cmd.Parameters.Add(new   System.Data.SqlClient.SqlParameter("@ComName",   System.Data.SqlDbType.VarChar,   20,   "ComName"));  
  this.cmd.Parameters.Add(new   System.Data.SqlClient.SqlParameter("@ComID",   System.Data.SqlDbType.VarChar,   20,   "ComID"));  
  this.cmd.Parameters.Add(new   System.Data.SqlClient.SqlParameter("@Price",   System.Data.SqlDbType.Money,   4,   "Price"));  
  this.cmd.Parameters.Add(new   System.Data.SqlClient.SqlParameter("@Con",   System.Data.SqlDbType.Int,   4,   "Con"));  
  this.cmd.Parameters.Add(new   System.Data.SqlClient.SqlParameter("@momey",   System.Data.SqlDbType.Money,   4,   "momey"));  
  this.cmd.Parameters.Add(new   System.Data.SqlClient.SqlParameter("@buyerName",   System.Data.SqlDbType.VarChar,   20,   "buyerName"));  
  //    
  this.salDS=new   DataSet();  
  this.sda.Fill(salDS,"netSales");  
   
  int   i,j;  
  j=DT.Rows.Count;  
  for(i=0;i<j;i++)  
  {  
  this.cmd.Parameters["@ComName"].Value=DT.Rows[i][0];  
  this.cmd.Parameters["@ComID"].Value=DT.Rows[i][1];  
  this.cmd.Parameters["@Price"].Value=DT.Rows[i][2];  
  this.cmd.Parameters["@Con"].Value=DT.Rows[i][3];  
  this.cmd.Parameters["@momey"].Value=DT.Rows[i][4];  
  this.cmd.Parameters["@buyerName"].Value=DT.Rows[i][5];  
   
   
  this.sda.Update(salDS);  
  this.sda.Fill(salDS,"netSales");  
  }  
  this.cnn.Close();  
  问题点数:50、回复次数:7Top

1 楼kscode(坐到天亮)回复于 2004-07-01 12:16:19 得分 0

TOP   救急~~~~~~~~~~~~~~~Top

2 楼edobnet(oоОoоО)回复于 2004-07-01 12:30:48 得分 0

有没有出错提示,没有的话,  
  先调存储过程,后调程序,  
  通过设断点看参数的传递情况!Top

3 楼CMIC(大象)回复于 2004-07-01 12:32:22 得分 50

this.cmd.Parameters.Add(new   System.Data.SqlClient.SqlParameter("@RETURN_VALUE",   System.Data.SqlDbType.Int,   4,   System.Data.ParameterDirection.ReturnValue,   false,   ((System.Byte)(0)),   ((System.Byte)(0)),   "",   System.Data.DataRowVersion.Current,   null));  
  ---------------------------  
  存储过程中并没有@RETURN_VALUE参数。Top

4 楼kscode(坐到天亮)回复于 2004-07-01 12:44:25 得分 0

to:CMIC  
  我在数据库对应的表中设了一个ID是自增的INT型,就是那@RETURN-VALUETop

5 楼CMIC(大象)回复于 2004-07-01 12:52:45 得分 0

你的代码是在代用一个存储过程:  
  CREATE   PROCEDURE   dbo.insertSal  
  (  
  @ComName   varchar(20),  
  @ComID   varchar(20),  
  @Price   smallmoney,  
  @Con   int,  
  @momey   smallmoney,  
  @buyerName   varchar(20)  
  )  
  好好看看这里并没有声明@RETURN_VALUE参数,这和你的表有什么关系?Top

6 楼kscode(坐到天亮)回复于 2004-07-01 20:36:38 得分 0

我声明了@RETURN—VALUE也添加不了Top

7 楼tangyy(tang)回复于 2004-07-01 20:54:20 得分 0

upTop

相关问题

  • 有使用VC做数据库的吗?快救救我吧!:(
  • 救救我!!!数据库管理的几个基础问题??
  • 神啊救救我把,mapinfo,gis,pb,数据库,bcb,
  • 各位数据库高手,救救我!我快疯了~~~~~~~888888-(
  • 各位数据库高手,救救我!我快疯了~~~~~~~888888-(......
  • 各位数据库高手,救救我!我快疯了~~~~~~~
  • 兄弟们救救我!关于paradox数据库的大问题!!!!!
  • 数据库问题,已经急疯了,救救俺吧
  • 数据库问题,已经急疯了,救救俺吧!!!!!!!!!!!!!!
  • 数据库问题,已经急疯了,救救俺吧 !!!!!!!!!!!!!

关键词

  • 数据
  • buyername
  • comid
  • momey
  • comname
  • cnn
  • con
  • commandtype
  • cmd
  • price

得分解答快速导航

  • 帖主:kscode
  • CMIC

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

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