友人遇到问题,数据库中无存储过程,而想写带参数的插入语句。

sql里面+了"@"表示sql里面的参数,而你开始定义的只是一个字符串.刚才那个没有赋值,正确看下面的.
SqlConnection conn=new SqlConnection(".....");
string name1 = "", age1 = "";
string strSqlInsert = "insert into birthday1(name1,age1) values (@name1,@age1)";
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = strSqlInsert;
cmd.Parameters.Add("@name1", System.Data.SqlDbType.VarChar, 10).Value = name1; ;
cmd.Parameters.Add("@age1", System.Data.SqlDbType.VarChar, 10).Value=age1;
cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
conn.Close();

昨天我最想找FileOperWebServices下
 public class GetWebData 中的部分代码,虽然我的是 数据库中已经建立了存储过程了。不过,个人认为,无论如何其基本原理是一样的,形式不同而已。今天帖我的代码于此,以便遇到此类问题,了做参考。

 /***删除文件***/#region/***删除文件***/
  
  public int DeleteFileInfo(string  name)
  {
   int rowCount=-1;
   try 
   {
    StringBuilder strDelete =new  StringBuilder(); 
    strDelete.Append(" delete  from  iles");
    strDelete.Append(" where Name='");
    strDelete.Append(name);
    strDelete.Append("'");
    
    conn=ConnectToSqlSever();
    SqlCommand deleteCmd = new SqlCommand(strDelete.ToString(),conn);
    rowCount=deleteCmd.ExecuteNonQuery();
   }
   catch (Exception ex)
   {
    throw new Exception(ex.Message);
   }
   finally
   {
    if (conn.State!=ConnectionState.Closed)
     conn.Close();
   }
   return rowCount;
  }
  #endregion

  /***查询类型***/#region/***查询类型***/
  /**//// <summary>
  /// 查询现有关键字段数据
  /// </summary>
  /// <param name="tablename">表名</param>
  /// <param name="field">字段名</param>
  /// <param name="name">DataSet填充表名</param>
  /// <returns>DataSet </returns>
  public DataSet  ComboxFieldData()
  {
   SqlDataAdapter da;
   string selectSQL=string.Empty;
   
   selectSQL="select distinct  1 , 2 from  ##"; 
   conn=ConnectToSqlSever();
   da = new SqlDataAdapter(selectSQL,conn);
   DataSet ds=new DataSet();
   try
   {
    da.Fill(ds); 
   }
   catch (Exception ex)
   {
    throw new Exception(ex.Message);
   }
   finally
   {
    if (conn.State!=ConnectionState.Closed)
     conn.Close();
   }
   return ds;
  }
  #endregion

  /**//***************************************************************************/
  /***object转***/#region/***object转***/
  private  FileInfomation  ChangeObj(object [] Row)
  {
   object Name= Row[0];
   object alias=Row[1];
   object serId= Row[2];
     
   object Se= Row[3];
   object Date= Row[4];
   object x= Row[5];
   object F= Row[6];

   object me=Row[7];
   object egth=Row[8];
   object ag=Row[9];
     
   int ty=System.Convert.ToInt32(ial);
   int d=System.Convert.ToInt32(F);
   int shid=System.Convert.ToInt32(sag);
   long lfgth=System.Convert.ToInt64(filgth);
   FileInfomation tempExam=new FileInfomation(Name.ToString(),as.ToString(),
    uId.ToString(),terial,uploadDate.ToString(),x.ToString(),
    flaid,me.ToString(), lfength,sgid);
   return  tempExam;
  }
  

  private  FileInfomation  ChangeObj2(object [] Row)
  {
   object uestion=Row[0];
   object Name= Row[1];
   object s=Row[2];
   object upe= Row[3];
      
   object al= Row[4];
   object Date= Row[5];
   object fx= Row[6];
   object fF= Row[7];

 
   object me=Row[8];
   object fiegth=Row[9];
   object slag=Row[10];
     
   int sn=System.Convert.ToInt32(Ion);
   int tyrial=System.Convert.ToInt32(Sial);
   int id=System.Convert.ToInt32(fF);
   int sgid=System.Convert.ToInt32(shfla);
   long lngth=System.Convert.ToInt64(fiegth);

   FileInfomation tempExam=new FileInfomation(sn,Name.ToString(),as.ToString(),
   .ToString(),terial,te.ToString(),x.ToString(),
    fid,me.ToString(),lfgth,shid);
   return  tempExam;
  }

  #endregion

  /***插入数据***/#region/***插入数据***/
  public void   InsertFileInfomation(object [] obj)   
  {  
   FileInfomation fileinfo=ChangeObj(obj);

   SqlParameter[] sqlpara=new SqlParameter[10];

   sqlpara[0]=new SqlParameter("@Name",fileinfo.me );
   sqlpara[1]=new SqlParameter("@Alias",fileinfo.ile);

   sqlpara[2]=new SqlParameter("@ID",fileinfo.erid);
   sqlpara[3]=new SqlParameter("@rial", fileinfo.rial);
   
   sqlpara[4]=new SqlParameter("@Date",fileinfo.ate);
   sqlpara[5]=new SqlParameter("@x",fileinfo.x);
   sqlpara[6]=new SqlParameter("@F",fileinfo.F);

   sqlpara[7]=new SqlParameter("@me ",fileinfo.M);
   sqlpara[8]=new SqlParameter("@ength",fileinfo.ength);
   sqlpara[9]=new SqlParameter("@ag",fileinfo.ag);

   SqlConnection conn =new SqlConnection(ConfigurationSettings.AppSettings["sqlConnString"]);
   Database db=new Database(conn);
   try
   {
    db.Excute("UP##",sqlpara);   
   }
   catch(Exception e)
   {
    throw e;
   }
   finally
   {
    db.Close();
   }
  }
  #endregion

  /***更新数据***/#region/***更新数据***/
  public void  UpdateFileInfomation(object [] obj)
  {
   FileInfomation fileinfo=ChangeObj2(obj);

   SqlParameter[] sqlpara=new SqlParameter[11];
   sqlpara[0]=new SqlParameter("@Name",fileinfo.me);
   sqlpara[1]=new SqlParameter("@Alias",fileinfo.ile);

   sqlpara[2]=new SqlParameter("@UserID",fileinfo.erid);
   sqlpara[3]=new SqlParameter("@Type", fileinfo.Type);
   sqlpara[4]=new SqlParameter("@Date",fileinfo.ate);

   sqlpara[5]=new SqlParameter("@File",fileinfo.x);
   sqlpara[6]=new SqlParameter("@F",fileinfo.F);
  
   sqlpara[7]=new SqlParameter("@me ",fileinfo.Me);
   sqlpara[8]=new SqlParameter("@ength",fileinfo.ength);
   sqlpara[9]=new SqlParameter("@lag",fileinfo.lag);
   sqlpara[10]=new SqlParameter("@ID",fileinfo.ID); 
 
        
   SqlConnection conn =new SqlConnection(ConfigurationSettings.AppSettings["sqlConnString"]);
   Database db=new Database(conn);
   try
   {
    db.Excute("U##",sqlpara);
   }
   catch(Exception e)
   {
    throw e;
   }
   finally
   {
    db.Close();
   }
  }
  #endregion

转载于:https://www.cnblogs.com/flashicp/archive/2007/04/03/697832.html

带参数的插入语句的问题相关推荐

  1. SQL Server之 (四) ADO增删查改 登录demo 带参数的sql语句 插入自动返回行号

    SQL Server之 (四) ADO增删查改  登录demo  带参数的sql语句  插入自动返回行号 自己学习笔记,转载请注明出处,谢谢!---酸菜 1.什么是ADO.NET ADO.NET是一组 ...

  2. 不带参数的SQL语句执行方法

    不带参数的SQL语句执行方法 以下是不带参数的SQL语句执行方法的代码,它调用通用数据访问类(SqlHelper)执行 SqlHelper.ExecuteNonQuery()方法,使用示例为; int ...

  3. oracle 执行带参数的sql语句_当用EXECUTE IMMEDIATE执行SQL语句中的参数个数也是动态的?用什么方法实现?...

    当用EXECUTE IMMEDIATE执行SQL语句中的参数个数也是动态的?用什么方法实现? 描述详细一点就是:在要执行的SQL语句中所用到(: parameter)这种参数的个数,因具体条件不同,而 ...

  4. mysql带条件的插入语句

    文章目录 一.数据库表结构 1.moduleRole(中间表) 2.roleInfo表 3.moduleInfo表 二.带条件插入的代码如下: 一.数据库表结构 1.moduleRole(中间表) 2 ...

  5. oracle 执行带参数的sql语句_Oracle动态SQL语句的简单执行

    在使用ODP.NET进行Oracle编程时,有时候SQL语句非常复杂,需要采用动态构造查询语句的情况,有两种方法可以构造动态的SQL语句,并执行返回结果集. 1.在数据访问层构造SQL语句 例如下面的 ...

  6. ADO.NET中带参数的Sql语句的陷阱

    1.使用Parameter //利用构造函数方式 ,不推荐这样写 Parameter p =new Parameter("@id",值); cmd.Parameters.Add(p ...

  7. java sql传参_JAVA执行带参数的SQL语句

    MVC系列--MVC源码学习:打造自己的MVC框架(三:自定义路由规则) 前言:上篇介绍了下自己的MVC框架前两个版本,经过两天的整理,版本三基本已经完成,今天还是发出来供大家参考和学习.虽然微软的R ...

  8. C#中MySQL语句带参数的模糊匹配问题

    用的是MySQL数据库,但是当我用带参数的sql语句进行模糊查询时,发现MySQL没有识别我的参数中的内容.经过了多次实验,终于找到了答案,拿出来和大家分享,不多说了,详细如下: public Dat ...

  9. C# Firebird SQL 语句带参数书写

    ⼀.常⽤的sql语句写法 1. ## 直接写⼊的对于⾮值类型字符串,两边各加⼀个单引号(') 例如 strsql = "update tuser set fpwd = '" + M ...

最新文章

  1. python标准库介绍——23 UserString 模块详解
  2. android代码设置全屏
  3. Python | threading03 - 使用条件对象,实现线程间的同步
  4. Android开源库集合(UI效果)
  5. SpringBoot 配置文件说明
  6. 51单片机之《概述》
  7. (2015秋) 团队博客及分组情况
  8. 龙芯cpu linux恢复密码,中标麒麟(龙芯CPU)--忘记root密码怎么修改?
  9. Linux_2022/7/19_Day1
  10. Linux系统搭建gitit wiki
  11. html单元格斜线分割,在网页中画单元格斜线分割
  12. Windows下IDEA 快捷键(自用)
  13. Deepin V20 安装 佳能 Canon LBP 2900打印机
  14. 【最新重磅整理】82篇AAAI2021强化学习领域论文接收列表
  15. echarts最新版做中国地图(详细版+避雷版)
  16. 华为云空间满了怎么清理_华为云空间满了怎么清理
  17. 如何写网络营销用的成功案例文章
  18. Acceptance testing
  19. C# 使用DllImport 调用 native DLL的方法
  20. echarts 实现Y轴四等分

热门文章

  1. java ecc signature_如何用python验证android/java的ECC签名
  2. 将图片序列帧合成mp4_超级详细!如何将B站缓存m4s文件无损转换为mp4格式
  3. pageinfo对合并list进行分页_PageInfo实现分页
  4. labview与单片机正弦信号_LabVIEW小白入门——低通滤波器
  5. UVA-Parentheses Balance
  6. 经典最优滤波器(概述)
  7. linux用户态使用gpio中断方法
  8. 习题3.10 汉诺塔的非递归实现 (25分)
  9. 习题2.6 递归求简单交错幂级数的部分和 (15 分)
  10. Spring IOC学习心得之Bean对IOC容器的感知