?调试时取UPDATE的SQL语句能不能在数据库里更新啊?
解决方案 »
- 请问dt.select()中的条件可以是大小判断吗
- gridview 传递参数
- 导出word文档时,如何在表格单元格里强行添加换行?
- 将Aspx文件转换成html放在服务器上,但是怎么响应asp.net控件?
- 在线等GridView设置表头
- 会ext的进来下,问个问题
- 请问iis中的主目录是否一定要是NTFS格式,否则vb.net开发asp.net存在问题??
- 学ASP.NET从什么开始学比较好?
- 奉送模拟csdn提问文章标题判断输入文字长度,求一个问题!
- 我的数据库连接是静态对象,那么使用sqldatareader会否有问题?
- viewstate无效?我自己做的服务器控件,可VIEWSTATE好像没用
- 请思归大侠及高手帮忙!一个关于连接网络资源的问题,
报什么错?
否则可以将SDK的例子直接拷过来试试!
我就是用你的方法,还是不行。
http://localhost/quickstart/util/srcview.aspx?path=/quickstart/aspplus/samples/webforms/data/datagrid6.src
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %><html><script language="C#" runat="server"> SqlConnection myConnection; protected void Page_Load(Object Src, EventArgs E)
{
myConnection = new SqlConnection("server=(local);database=wjldata;uid=sa;pwd=;");
if (!IsPostBack)
BindGrid();
} public void MyDataGrid_Edit(Object sender, DataGridCommandEventArgs E)
{
MyDataGrid.EditItemIndex = (int)E.Item.ItemIndex;
BindGrid();
} public void MyDataGrid_Cancel(Object sender, DataGridCommandEventArgs E)
{
MyDataGrid.EditItemIndex = -1;
BindGrid();
} public void MyDataGrid_Update(Object sender, DataGridCommandEventArgs e)
{
String updateCmd = "UPDATE farelist SET farenumber = @fnumber, shopname = @sname, farekind = @fk, fare = @fr, "
+ "writeman = @wman, writedate = @wdate, re=@rm where farenumber = @fnumber"; SqlCommand myCommand = new SqlCommand(updateCmd, myConnection); myCommand.Parameters.Add(new SqlParameter("@fnumber", SqlDbType.NVarChar, 10));
myCommand.Parameters.Add(new SqlParameter("@sname", SqlDbType.NVarChar, 10));
myCommand.Parameters.Add(new SqlParameter("@fk", SqlDbType.NVarChar, 10));
myCommand.Parameters.Add(new SqlParameter("@fr", SqlDbType.NChar, 8));
myCommand.Parameters.Add(new SqlParameter("@wman", SqlDbType.NVarChar, 10));
myCommand.Parameters.Add(new SqlParameter("@wdate", SqlDbType.NVarChar, 10));
myCommand.Parameters.Add(new SqlParameter("@rm", SqlDbType.NChar, 200));
myCommand.Parameters["@fnumber"].Value = MyDataGrid.DataKeys[(int)e.Item.ItemIndex]; String[] cols = {"@fnumber","@sname","@fk","@fr","@wman","@wdate","@rm"}; int numCols = e.Item.Cells.Count;
for (int i=1; i<numCols-1; i++) //skip first, second and last column
{
String colvalue =((TextBox)e.Item.Cells[i].Controls[0]).Text; // check for null values in required fields
if (i<6 && colvalue == "")
{
Message.InnerHtml = "ERROR: Null values not allowed for Author ID, Name or Phone";
Message.Style["color"] = "red";
return;
} myCommand.Parameters[cols[i-1]].Value = colvalue;
}
myCommand.Connection.Open(); try
{
myCommand.ExecuteNonQuery();
Message.InnerHtml = "<b>Record Updated</b><br>" + updateCmd;
MyDataGrid.EditItemIndex = -1;
}
catch (SqlException exc)
{
if (exc.Number == 2627)
Message.InnerHtml = "ERROR: A record already exists with the same primary key";
else
Message.InnerHtml = "ERROR: Could not update record, please ensure the fields are correctly filled out";
Message.Style["color"] = "red";
} myCommand.Connection.Close(); BindGrid();
}
public void BindGrid()
{
SqlDataAdapter myCommand = new SqlDataAdapter("select * from farelist", myConnection); DataSet ds = new DataSet();
myCommand.Fill(ds, "farelist"); MyDataGrid.DataSource=ds.Tables["farelist"].DefaultView;
MyDataGrid.DataBind();
}</script><body style="font: 10pt verdana"> <form runat="server"> <h3><font face="Verdana">Updating a Row of Data w/ Read-Only Column</font></h3> <span id="Message" EnableViewState="false" style="font: arial 11pt;" runat="server"/><p> <ASP:DataGrid id="MyDataGrid" runat="server"
Width="800"
BackColor="#ccccff"
BorderColor="black"
ShowFooter="false"
CellPadding=3
CellSpacing="0"
Font-Name="Verdana"
Font-Size="8pt"
HeaderStyle-BackColor="#aaaadd"
OnEditCommand="MyDataGrid_Edit"
OnCancelCommand="MyDataGrid_Cancel"
OnUpdateCommand="MyDataGrid_Update"
DataKeyField="farenumber"
AutoGenerateColumns="false"
>
<Columns>
<asp:EditCommandColumn HeaderText="操作区" EditText="Edit" CancelText="Cancel" UpdateText="Update" ItemStyle-Wrap="false"/>
<asp:BoundColumn HeaderText="编号" SortExpression="farenumber" DataField="farenumber"/>
<asp:BoundColumn HeaderText="商场名称" SortExpression="shopname" DataField="shopname"/>
<asp:BoundColumn HeaderText="费用种类" SortExpression="farekind" DataField="farekind"/>
<asp:BoundColumn HeaderText="费用" SortExpression="fare" DataField="fare"/>
<asp:BoundColumn HeaderText="创建人" SortExpression="writeman" DataField="writeman"/>
<asp:BoundColumn HeaderText="创建日期" SortExpression="writedate" DataField="writedate"/>
<asp:BoundColumn HeaderText="备注" SortExpression="re" DataField="re"/>
</Columns> </ASP:DataGrid> </form></body>
</html>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<html>
<script language="C#" runat="server">
SqlConnection myConnection;
protected void Page_Load(Object Src, EventArgs E)
{
myConnection = new SqlConnection("server=(local)\\NetSDK;database=insideweb;Integrated Security=SSPI");
if (!IsPostBack)
BindGrid();
}
public void MyDataGrid_Edit(Object sender, DataGridCommandEventArgs E)
{
MyDataGrid.EditItemIndex = (int)E.Item.ItemIndex;
BindGrid();
}
public void MyDataGrid_Cancel(Object sender, DataGridCommandEventArgs E)
{
MyDataGrid.EditItemIndex = -1;
BindGrid();
}
public void MyDataGrid_Update(Object sender, DataGridCommandEventArgs e)
{
String updateCmd = "UPDATE farelist SET farenumber = @fnumber, shopname = @sname, farekind = @fk, fare = @fr, writeman = @wman, writedate = @wdate, re=@rm where farenumber = @fnumber";
SqlCommand myCommand = new SqlCommand(updateCmd, myConnection);
myCommand.Parameters.Add(new SqlParameter("@fnumber", SqlDbType.NVarChar, 50));
myCommand.Parameters["@fnumber"].Value=((TextBox)e.Item.Cells[1].Controls[0]).Text;
myCommand.Parameters.Add(new SqlParameter("@sname", SqlDbType.NVarChar, 50));
myCommand.Parameters["@sname"].Value=((TextBox)e.Item.Cells[2].Controls[0]).Text;
myCommand.Parameters.Add(new SqlParameter("@fk", SqlDbType.NVarChar, 50));
myCommand.Parameters["@fk"].Value=((TextBox)e.Item.Cells[3].Controls[0]).Text;
myCommand.Parameters.Add(new SqlParameter("@fr", SqlDbType.NVarChar, 50));
myCommand.Parameters["@fr"].Value=((TextBox)e.Item.Cells[4].Controls[0]).Text;
myCommand.Parameters.Add(new SqlParameter("@wman", SqlDbType.NVarChar, 50));
myCommand.Parameters["@wman"].Value=((TextBox)e.Item.Cells[5].Controls[0]).Text;
myCommand.Parameters.Add(new SqlParameter("@wdate", SqlDbType.NVarChar, 50));
myCommand.Parameters["@wdate"].Value=((TextBox)e.Item.Cells[6].Controls[0]).Text;
myCommand.Parameters.Add(new SqlParameter("@rm", SqlDbType.NVarChar, 50));
myCommand.Parameters["@rm"].Value=((TextBox)e.Item.Cells[7].Controls[0]).Text;
myCommand.Connection.Open();
try
{
myCommand.ExecuteNonQuery();
Message.InnerHtml = "<b>Record Updated</b><br>" + updateCmd;
MyDataGrid.EditItemIndex = -1;
}
catch (SqlException exc)
{
if (exc.Number == 2627)
Message.InnerHtml = "ERROR: A record already exists with the same primary key";
else
Message.InnerHtml = "ERROR: Could not update record, please ensure the fields are correctly filled out";
Message.Style["color"] = "red";
}
myCommand.Connection.Close();
BindGrid();
}
public void BindGrid()
{
SqlDataAdapter myCommand = new SqlDataAdapter("select * from farelist", myConnection);
DataSet ds = new DataSet();
myCommand.Fill(ds, "farelist");
MyDataGrid.DataSource=ds.Tables["farelist"].DefaultView;
MyDataGrid.DataBind();
}
</script><body style="font: 10pt verdana"> <form runat="server"> <h3><font face="Verdana">Updating a Row of Data w/ Read-Only Column</font></h3> <span id="Message" EnableViewState="false" style="font: arial 11pt;" runat="server"/><p> <ASP:DataGrid id="MyDataGrid" runat="server"
Width="800"
BackColor="#ccccff"
BorderColor="black"
ShowFooter="false"
CellPadding=3
CellSpacing="0"
Font-Name="Verdana"
Font-Size="8pt"
HeaderStyle-BackColor="#aaaadd"
OnEditCommand="MyDataGrid_Edit"
OnCancelCommand="MyDataGrid_Cancel"
OnUpdateCommand="MyDataGrid_Update"
DataKeyField="farenumber"
AutoGenerateColumns="false"
>
<Columns>
<asp:EditCommandColumn HeaderText="操作区" EditText="Edit" CancelText="Cancel" UpdateText="Update" ItemStyle-Wrap="false"/>
<asp:BoundColumn HeaderText="编号" SortExpression="farenumber" DataField="farenumber"/>
<asp:BoundColumn HeaderText="商场名称" SortExpression="shopname" DataField="shopname"/>
<asp:BoundColumn HeaderText="费用种类" SortExpression="farekind" DataField="farekind"/>
<asp:BoundColumn HeaderText="费用" SortExpression="fare" DataField="fare"/>
<asp:BoundColumn HeaderText="创建人" SortExpression="writeman" DataField="writeman"/>
<asp:BoundColumn HeaderText="创建日期" SortExpression="writedate" DataField="writedate"/>
<asp:BoundColumn HeaderText="备注" SortExpression="re" DataField="re"/>
</Columns>
</ASP:DataGrid>
</form>
</body>
</html>