必须声明变量 '@name'----在线等

问题描述

protectedvoidGridView1_RowCommand(objectsender,GridViewCommandEventArgse){if(e.CommandName=="New"){stringStudentTitle=((TextBox)GridView1.FooterRow.FindControl("Newname")).Text;if(StudentTitle.Trim()==""){ErrorMsg.Text="请输入姓名";return;}stringStudentconcert=((TextBox)GridView1.FooterRow.FindControl("Newconcert")).Text;stringsql="InsertIntoliuy(name,concert)";sql+="Values(@name,@concert)";SqlDataSource1.InsertCommand=sql;SqlDataSource1.InsertParameters.Add("@name",TypeCode.String,StudentTitle);SqlDataSource1.InsertParameters.Add("@concert",TypeCode.String,Studentconcert);SqlDataSource1.Insert();}if(e.CommandName=="Update"){stringStudentTitle=((TextBox)GridView1.Rows[GridView1.EditIndex].FindControl("uname")).Text;stringStudentconcert=((TextBox)GridView1.Rows[GridView1.EditIndex].FindControl("uconcert")).Text;stringStudentID=GridView1.DataKeys[GridView1.EditIndex].Value.ToString();stringsql="UpdateliuySetname=@name,concert=@concertWhereid=@id";SqlDataSource1.UpdateCommand=sql;SqlDataSource1.UpdateCommandType=SqlDataSourceCommandType.Text;SqlDataSource1.UpdateParameters.Add("@name",TypeCode.String,StudentTitle);SqlDataSource1.UpdateParameters.Add("@concert",TypeCode.String,Studentconcert);SqlDataSource1.UpdateParameters.Add("@id",TypeCode.Int32,StudentID);SqlDataSource1.Update();}}必须声明变量'@name'。说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.Data.SqlClient.SqlException:必须声明变量'@name'。

解决方案

解决方案二:
会不会是@name后有空格的原因?把引号内的空格都去掉试试
解决方案三:
啊`不会吧空格都不行好的我试下`
解决方案四:
还不是不行哦``里面是没有空格的``
解决方案五:
<asp:GridViewID="GridView1"runat="server"AutoGenerateColumns="False"DataKeyNames="id"AllowPaging="true"AllowSorting="true"PageSize="5"DataSourceID="SqlDataSource1"ShowFooter="true"OnRowCommand="GridView1_RowCommand"><Columns><asp:BoundFieldDataField="id"HeaderText="id"InsertVisible="False"ReadOnly="True"Visible="false"SortExpression="id"/><asp:TemplateFieldHeaderText="姓名"SortExpression="name"><ItemTemplate><%#Eval("name")%></ItemTemplate><EditItemTemplate><asp:TextBoxID="uname"runat="server"Text='<%#Eval("name")%>'></asp:TextBox></EditItemTemplate><FooterTemplate><asp:TextBoxID="Newname"runat="server"></asp:TextBox></FooterTemplate></asp:TemplateField><asp:TemplateFieldHeaderText="内容"SortExpression="concert"><ItemTemplate><%#Eval("concert")%></ItemTemplate><EditItemTemplate><asp:TextBoxID="uconcert"runat="server"Text='<%#Eval("concert")%>'></asp:TextBox></EditItemTemplate><FooterTemplate><asp:TextBoxID="Newconcert"runat="server"></asp:TextBox></FooterTemplate></asp:TemplateField><asp:CommandFieldButtonType="Button"ShowCancelButton="true"ShowDeleteButton="true"ShowEditButton="true"CancelText="取消"DeleteText="删除"UpdateText="更新"EditText="修改"HeaderText="操作"InsertVisible="false"ShowInsertButton="true"NewText="添加"/></Columns></asp:GridView>asp是这样的我是要接受那些变量插入到数据库``怎么总是提示那样的错误
解决方案六:
把TypeCode.String去掉SqlDataSource1.InsertParameters.Add("@name",StudentTitle);
解决方案七:
SqlDataSource1.InsertParameters.Add("@name",TypeCode.String,StudentTitle);@name后面不要用空格
解决方案八:
没有空格的啊`还是不行你的方法都试过``会不会数据要设置啊``
解决方案九:
aspx部分:<asp:GridViewID="GridView1"runat="server"AutoGenerateColumns="False"DataKeyNames="id"AllowPaging="true"AllowSorting="true"PageSize="5"DataSourceID="SqlDataSource1"ShowFooter="true"OnRowCommand="GridView1_RowCommand"><Columns><asp:BoundFieldDataField="id"HeaderText="id"InsertVisible="False"ReadOnly="True"Visible="false"SortExpression="id"/><asp:TemplateFieldHeaderText="姓名"SortExpression="name"><ItemTemplate><%#Eval("name")%></ItemTemplate><EditItemTemplate><asp:TextBoxID="uname"runat="server"Text='<%#Eval("name")%>'></asp:TextBox></EditItemTemplate><FooterTemplate><asp:TextBoxID="Newname"runat="server"></asp:TextBox></FooterTemplate></asp:TemplateField><asp:TemplateFieldHeaderText="内容"SortExpression="concert"><ItemTemplate><%#Eval("concert")%></ItemTemplate><EditItemTemplate><asp:TextBoxID="uconcert"runat="server"Text='<%#Eval("concert")%>'></asp:TextBox></EditItemTemplate><FooterTemplate><asp:TextBoxID="Newconcert"runat="server"></asp:TextBox></FooterTemplate></asp:TemplateField><asp:CommandFieldButtonType="Button"ShowCancelButton="true"ShowDeleteButton="true"ShowEditButton="true"CancelText="取消"DeleteText="删除"UpdateText="更新"EditText="修改"HeaderText="操作"InsertVisible="false"ShowInsertButton="true"NewText="添加"/></Columns></asp:GridView>cs部分:protectedvoidGridView1_RowCommand(objectsender,GridViewCommandEventArgse){if(e.CommandName=="New"){stringStudentTitle=((TextBox)GridView1.FooterRow.FindControl("Newname")).Text;if(StudentTitle.Trim()==""){ErrorMsg.Text="请输入姓名";return;}stringStudentconcert=((TextBox)GridView1.FooterRow.FindControl("Newconcert")).Text;stringsql="InsertIntoliu(name,concert)Values(@name,@concert)";SqlDataSource1.InsertCommand=sql;SqlDataSource1.InsertParameters.Add("@name",TypeCode.String,StudentTitle);SqlDataSource1.InsertParameters.Add("@concert",TypeCode.String,Studentconcert);SqlDataSource1.Insert();}if(e.CommandName=="Update"){stringStudentTitle=((TextBox)GridView1.Rows[GridView1.EditIndex].FindControl("uname")).Text;stringStudentconcert=((TextBox)GridView1.Rows[GridView1.EditIndex].FindControl("uconcert")).Text;stringStudentID=GridView1.DataKeys[GridView1.EditIndex].Value.ToString();stringsql="UpdateliuySetname=@name,concert=@concertWhereid=@id";SqlDataSource1.UpdateCommand=sql;SqlDataSource1.UpdateCommandType=SqlDataSourceCommandType.Text;SqlDataSource1.UpdateParameters.Add("@name",TypeCode.String,StudentTitle);SqlDataSource1.UpdateParameters.Add("@concert",TypeCode.String,Studentconcert);SqlDataSource1.UpdateParameters.Add("@id",TypeCode.Int32,StudentID);SqlDataSource1.Update();}}请高手在看下`那里是没有空格的`我运行后执行插入添加中是提示变量问题错误:必须声明变量'@name'。说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.Data.SqlClient.SqlException:必须声明变量'@name'。源错误:行60:SqlDataSource1.UpdateParameters.Add("@id",TypeCode.Int32,StudentID);行61:行62:SqlDataSource1.Update();行63:}行64:必须声明变量'@name'。说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.Data.SqlClient.SqlException:必须声明变量'@name'。源错误:行42:SqlDataSource1.InsertParameters.Add("@concert",TypeCode.String,Studentconcert);行43:行44:SqlDataSource1.Insert();行45:}行46:不知道是什么问题,在线等````!!谢谢
解决方案十:
SqlDataSource1.InsertCommand=newSqlCommand(InsertIntoliu(name,concert)Values(@name,@concert));SqlDataSource1.InsertParameters.Add("@name",TypeCode.String,StudentTitle);
解决方案十一:
楼上还在吗?说明:在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。编译器错误信息:CS0029:无法将类型“System.Data.SqlClient.SqlCommand”隐式转换为“string”源错误:行39://stringsql="InsertIntoliu(name,concert)Values(@name,@concert)";行40://SqlDataSource1.InsertCommand=sql;行41:SqlDataSource1.InsertCommand=newSqlCommand("InsertIntoliu(name,concert)Values(@name,@concert)");行42:行43:SqlDataSource1.InsertParameters.Add("@name",StudentTitle);

时间: 2024-09-20 15:05:19

必须声明变量 &amp;#x27;@name&amp;#x27;----在线等的相关文章

final修饰的终态变量只能在声明变量时或构造函数里赋值嘛?

问题描述 final修饰的终态变量只能在声明变量时或构造函数里赋值嘛? class GongChengShi { final String name;//名字 final String dizhi;//地址 int age;//年龄 public GongChengShi(String name, int age) { this.name = name;//构造函数初始化时给名字和年龄赋值 this.age = age; } void setDizhi(String dizhi){//在子类中调

java的接口可以直接拿来声明变量?

问题描述 java的接口可以直接拿来声明变量? public interface IUserManage { public void addUser(User user); public void modifyUser(User user); public void deleteUser(User user); } 现在有这么个接口,然后在另一个没有实现此接口的类里看到如下这句: private IUserManage userManage: 在这个类里,直接声明了userManage,并且us

c 数组-好奇怪,声明变量必须在数组声明之前???

问题描述 好奇怪,声明变量必须在数组声明之前??? 看个小代码,前后只是改变了i,j声明的位置,可第二个报错 /*用循环语句构造方阵*/ #include<stdio.h> #include<stdlib.h> int main(void) { int i,j; static int a[5][5]; /*用static,可为其赋初值0*/ a[0][0] = 5; /*为a[0][0]赋初值,以此为基础通过运算得出其它结果*/ for (i = 0; i < 5; i++)

oracle存储过程、声明变量、for循环(转)

oracle存储过程.声明变量.for循环  1.创建存储过程 create or replace procedure test(var_name_1 in type,var_name_2 out type) as --声明变量(变量名 变量类型) begin --存储过程的执行体 end test; 打印出输入的时间信息 E.g: create or replace procedure test(workDate in Date) is begin dbms_output.putline(&a

浅析JavaScript声明变量_javascript技巧

JavaScript的变量声明语句无论出现在何处,都会先于其他代码首先被执行.使用var关键词声明变量的作用域是当前的执行上下文,有可能是外围函数,或者,当变量声明在函数体之外时,则为全局变量. 定义在函数体外的都属于全局变量,定义在函数体内的属于局部变量.这里的定义是指通过var声明的. JavaScript有隐含的全局概念,意味着你不声明的任何变量都会成为一个全局对象属性.例如: function test(){ myname = "huming"; alert(myname);

C++中的extern声明变量详解_C 语言

extern声明变量无外乎如下两种: 1.声明全局变量 2.声明函数 今天我们只谈extern,什么const.static之类等等与之相关或不相关的一律忽略,下面就分别对以上两种情况一一讲解 声明和定义既然提到extern声明变量,那我们就必须搞清楚声明和定义的区别. 这里我们将普通数据变量和函数统称变量.从内存分配角度来说,声明和定义的区别在于声明一个变量不会分配内存,而定义一个变量会分配内存.一个变量可以被声明多次,但是只能被定义一次. 基于以上前提,我们可以把声明和定义类比为指针和内存的

JavaScript声明变量时为什么要加var关键字_javascript技巧

在JavaScript中,var用来声明变量,但是这个语法并不严格要求,很多时修改,我们可以直接使用一个变量而不用var声明它. 复制代码 代码如下: var x = "XX"; y ="xxx"; 诸如此类.这有一个问题,比如说在代码中的某一行,我想使用的一个已声明的变量x,结果由于打字或者拼写错误,这个变量被写成y了,结果相当于"隐式"声明了一个变量y,在实际编程过程中,这种错误有时比较难以发现. 当你在当前上下文内进行这种"隐式&

“必须声明变量@strClientCode” 为什么老是提示这个错误啊

问题描述 "必须声明变量@strClientCode" 为什么老是提示这个错误啊 StringBuilder strSql = new StringBuilder(); strSql.Append("insert into strImage (strClientCode,images,dateTM) "); strSql.Append(" values ( "); strSql.Append("@strClientCode,@image

asp 简单的声明变量

1.简单变量的声明  2.数组变量的声明  3.变量的赋值  4.变量的作用域和存活期  实例: example8.asp <%  x=1  call setprocedurevariable '调用setprocedurevariable过程  response.write x  '在网页上显示x的值  sub setprocedurevariable() '定义过程   x=2  end sub %> example9.asp <%  dim x    '定义脚本级变量  x=1