學(xué)生信息管理(例文)
發(fā)布時間:2020-11-21 來源: 述職報告 點擊:
用 使用 ASP.NET+SQL SERVER 2008 實現(xiàn)對學(xué)生信息的管理 本案例利用 ASP.NET+SQL Server 2008 數(shù)據(jù)庫實現(xiàn)對學(xué)生成績管理數(shù)據(jù)庫的學(xué)生信息管理。功能包括查詢學(xué)生、添加學(xué)生、編輯學(xué)生信息和刪除學(xué)生信息。
實例效果:
學(xué)生信息查詢頁面效果,如圖 10-18 所示。
圖 10-18 學(xué)生查詢頁面 輸入學(xué)號,可以進行學(xué)生信息的精確查詢,如圖 10-19 所示。
圖 10-19 按照學(xué)號進行查詢 輸入學(xué)生姓名,可以按照姓名進行學(xué)生信息的模糊查詢,如圖 10-20 所示。
圖 10-20 按照姓名進行模糊查詢 單擊添加按鈕,跳轉(zhuǎn)到添加學(xué)生信息頁面,可以添加學(xué)生信息,如圖 10-21 所示。
圖 10-21 添加學(xué)生信息 單擊提交按鈕,完成學(xué)生信息的添加。如圖 10-22 所示。
圖 10-22 完成添加學(xué)生信息 單擊返回按鈕,跳轉(zhuǎn)到查詢學(xué)生信息頁面,可以查詢剛剛添加的學(xué)生信息,如圖 10-23所示。
圖 10-23 查詢添加的學(xué)生信息 單擊某學(xué)生信息的編輯按鈕,跳轉(zhuǎn)到編輯學(xué)生信息頁面,在文本框中顯示學(xué)生原本的信息。如圖 10-24 所示。
圖 10-24 編輯學(xué)生信息 可以按需要在文本框中修改和編輯學(xué)生信息,如圖 10-25 所示。
圖 10-25 修改學(xué)生信息 點擊提交按鈕,完成學(xué)生信息的編輯。如圖 10-26 所示。圖 10-25 完成學(xué)生信息的編輯 單擊返回按鈕,跳轉(zhuǎn)到查詢學(xué)生信息頁面,可以查詢剛剛編輯完的學(xué)生信息,如圖 10-26所示。
圖 10-26 查詢編輯后的學(xué)生信息 單擊某學(xué)生信息的刪除按鈕,可以將該學(xué)生的信息從數(shù)據(jù)庫中刪除。如圖 10-27 所示。
圖 10-27 刪除學(xué)生信息 學(xué)生信息管理任務(wù)設(shè)計過程 【操作步驟】
。1)打開 Visual Studio 2010,然后新建一個 ASP.NET 網(wǎng)站新建一個網(wǎng)站,添加 3 個web 窗體,查詢.aspx(查詢學(xué)生信息)、添加 aspx(添加學(xué)生信息)、編輯.aspx(編輯學(xué)生信息)。
(2)在 Web.config 文件中配置數(shù)據(jù)庫連接字符串,在配置節(jié)<connectionStrings>下的添加連接字符串,代碼如下:
<connectionStrings> <addname="tsdbconnection"connectionString="server=localhost;database=學(xué)生成績管理數(shù)據(jù)庫;integratedsecurity=true;" providerName="system.data.sqlclient"/>
</connectionStrings> (3)對查詢.aspx 進行界面設(shè)計。控件包括:2 個 TextBox、2 個 Button、2 個 LinkButton和 1 個 GridView。界面設(shè)計如圖 10-28 所示
圖 10-28 查詢.aspx 界面設(shè)計 具體代碼如下:
<htmlxmlns="http://www.w3.org/1999/xhtml"> <headrunat="server">
<title></title>
<style type="text/css">
.style1
{
width: 100%;
}
</style> </head> <body>
<formid="form1" runat="server">
<div>
<table>
<tr>
<td>
</td>
<td>
</td>
<td>
學(xué)生學(xué)號</td>
<td>
<asp:TextBox ID="TextBox1"runat="server"></asp:TextBox>
</td>
<td>
</td>
<td>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
學(xué)生姓名</td>
<td>
<asp:TextBox ID="TextBox2"runat="server"></asp:TextBox>
</td>
<td>
</td>
<td>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<asp:Button ID="Button1" runat="server"onclick="Button1_Click" Text="查詢" />
</td>
<td>
<asp:Button ID="Button2" runat="server"onclick="Button2_Click" Text="添加" />
</td>
<td>
</td>
<td>
</td>
</tr>
</table>
<br />
<asp:GridView ID="GridView1" runat="server"AutoGenerateColumns="False"
DataKeyNames="studno" HorizontalAlign="Center"
onrowcommand="GridView1_RowCommand">
<Columns>
<asp:BoundField DataField="studno" HeaderText="學(xué)號"ReadOnly="True"
SortExpression="studno" />
<asp:BoundField DataField="studname" HeaderText="姓名"SortExpression="studname" />
<asp:BoundField DataField="studsex" HeaderText="性別"SortExpression="studsex" />
<asp:BoundField DataField="classid" HeaderText="班級編號"SortExpression="classid" />
<asp:BoundField DataField="studbirthday" HeaderText="出生日期"
SortExpression="studbirthday"/>
<asp:BoundField DataField="sid" HeaderText="序號?"InsertVisible="False"
ReadOnly="True" SortExpression="sid" />
<asp:TemplateField HeaderText="操作">
<ItemTemplate>
<asp:LinkButtonID="LinkButton1" runat="server"
CommandArgument="<%# Eval("studno") %>"CommandName="bj">編輯</asp:LinkButton>
<asp:LinkButton ID="LinkButton2"runat="server"
CommandArgument="<%# Eval("studno") %>"CommandName="sc">刪除</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<br />
</div>
</form> </body> </html> 為查詢按鈕添加事件代碼:
protected void Button1_Click(object sender,EventArgs e)
{
string sql = "SELECT * FROM 學(xué)生表 WHERE ";
if(TextBox1.Text!= "")
{
sql += " studno LIKE"%" + TextBox1.Text + "%"";
}
if(TextBox2.Text!= ""&&TextBox1.Text!="")
{
sql += " AND studname LIKE"%" + TextBox2.Text +"%"";
}
if(TextBox2.Text != "" && TextBox1.Text == "")
{
sql+= "
studname LIKE"%" +TextBox2.Text + "%"";
}
SqlConnection conn = new SqlConnection();
string ConnStr =ConfigurationManager.ConnectionStrings["tsdbconnection"].ToString();
conn.ConnectionString = ConnStr;
SqlDataAdapterda = new SqlDataAdapter(sql, conn);
DataSet ds = new DataSet();
da.Fill(ds);
GridView1.DataSource = ds.Tables[0];
GridView1.DataBind();
} 為添加按鈕添加事件代碼:
protected void Button2_Click(object sender,EventArgs e)
{
Response.Redirect("添加.aspx");
} 添加 GridView 的 RowCommand 事件代碼 protected void GridView1_RowCommand(object sender,GridViewCommandEventArgs e)
{
if (e.CommandName == "bj")
{
Session["a1"] = e.CommandArgument.ToString();
Response.Redirect("編輯.aspx");
}
if(e.CommandName == "sc")
{
string a2 = e.CommandArgument.ToString();
SqlConnection conn = new SqlConnection();
string ConnStr = ConfigurationManager.ConnectionStrings["tsdbconnection"].ToString();
conn.ConnectionString = ConnStr;
string Sqlstr = "select * from 學(xué)生表 where studno="" + a2 + """;
SqlDataAdapter da = new SqlDataAdapter(Sqlstr, conn);
SqlCommandBuilder cb = newSqlCommandBuilder(da);
DataSet ds = new DataSet();
da.Fill(ds);
ds.Tables[0].Rows[0].Delete();
da.Update(ds);
conn.Close();
Response.Write("<script>alert("記錄已成功刪除!")</script>");
}
} (4)對添加.aspx 進行界面設(shè)計?丶ǎ5 個 TextBox、2 個 Button。界面設(shè)計如圖10-29 所示。
圖 10-29 添加.aspx 界面 具體代碼如下:
<htmlxmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<title>無標(biāo)題頁</title>
<style type="text/css">
.style1
{
text-align: center;
width: 91px;
}
.style2
{
height: 31px;
}
.style3
{
height: 53px;
}
.style4
{
width: 80px;
}
</style> </head> <body>
<formid="form1" runat="server">
<div>
<table border="1" style="width: 500px"align="center">
<tr>
<td colspan="4" style="text-align: center"class="style2">
<strong>添加新記錄</strong></td>
</tr>
<tr>
<td style="text-align: center">
學(xué)號</td>
<td style="width: 115px">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox></td>
<td>
姓名</td>
<td style="width: 115px">
<asp:TextBox ID="TextBox2"runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td style="text-align: center">
性別</td>
<td style="width: 115px">
<asp:TextBox ID="TextBox3"runat="server"></asp:TextBox>
</td>
<td>
班級編號</td>
<td style="width: 115px">
<asp:TextBox ID="TextBox4"runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td style="text-align: center; height: 23px;"class="style3">
出生日期</td>
<td style="text-align: center; height: 23px;"class="style3">
<asp:TextBox ID="TextBox6"runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td style="text-align: center; height: 23px;"class="style3" colspan="4">
<asp:Button ID="Button1" runat="server"OnClick="Button1_Click"
Text="提交" />
<asp:Button ID="Button2" runat="server"OnClick="Button2_Click" Text="返回" /></td>
</tr>
</table>
<br />
<br />
</div>
</form> </body> </html>
為提交按鈕添加事件代碼:
protected void Button1_Click(object sender,EventArgs e)
{
SqlConnection conn = new SqlConnection();
string ConnStr =ConfigurationManager.ConnectionStrings["tsdbconnection"].ToString();
conn.ConnectionString = ConnStr;
string Sqlstr = "select * from 學(xué)生表";
SqlDataAdapter da = new SqlDataAdapter(Sqlstr, conn);
SqlCommandBuilder cb = new SqlCommandBuilder(da);
DataSet ds = new DataSet();
da.Fill(ds);
DataRow newrow = ds.Tables[0].NewRow();
newrow["studno"] = TextBox1.Text;
newrow["studname"] = TextBox2.Text;
newrow["studsex"] = TextBox3.Text;
newrow["classid"] = TextBox4.Text;
newrow["studbirthday"] = TextBox6.Text;
ds.Tables[0].Rows.Add(newrow);
da.Update(ds);
conn.Close();
Response.Write("<script language=javascript>alert("新記錄添加成功!")</script>");
} 為返回按鈕添加事件代碼:
protected void Button2_Click(object sender, EventArgs e)
{
Response.Redirect("查詢.aspx"); } (5)對編輯.aspx 進行界面設(shè)計。控件包括:5 個 TextBox、2 個 Button。界面設(shè)計如圖10-30 所示。
圖 圖 10- - 30 編輯x .aspx 界面
具體設(shè)計代碼如下:
<htmlxmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<title>無標(biāo)題頁</title>
<style type="text/css">
.style2
{
height: 31px;
}
.style1
{
text-align: center;
}
.style3
{
height: 41px;
}
</style> </head> <body>
<formid="form1" runat="server">
<divstyle="height: 241px">
<table border="1" style="width: 500px"align="center">
<tr>
<td colspan="4" style="text-align: center"class="style2">
<strong>修改記錄</strong></td>
</tr>
<tr>
<td style="text-align: center">
學(xué)號</td>
<td style="width: 115px">
<asp:TextBox ID="TextBox1"runat="server"></asp:TextBox></td>
<td>
姓名</td>
<td style="width: 115px">
<asp:TextBox ID="TextBox2"runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td style="text-align: center">
性別</td>
<td style="width: 115px">
<asp:TextBox ID="TextBox3"runat="server"></asp:TextBox>
</td>
<td>
班級編號</td>
<td style="width: 115px">
<asp:TextBox ID="TextBox4"runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td style="text-align: center; height: 23px;"class="style3">
出生日期</td>
<td style="text-align:center; height: 23px;">
<asp:TextBox ID="TextBox6"runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td style="text-align: center; height: 23px;"class="style3" colspan="4">
<asp:Button ID="Button1" runat="server"OnClick="ButtonSubmit_Click"
Text="提交" />
<asp:Button ID="Button2" runat="server"OnClick="ButtonBack_Click" Text="返回" /></td>
</tr>
</table>
<br />
<br />
<br />
</div>
</form> </body> </html> 添加 Page_Load 事件:
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
SqlConnection conn = new SqlConnection();
string ConnStr =ConfigurationManager.ConnectionStrings["tsdbconnection"].ToString();
conn.ConnectionString = ConnStr;
string SqlStr = "select * from 學(xué)生表 where studno="" +Session["a1"].ToString() + """;
SqlCommand com = new SqlCommand();
com.Connection = conn;
com.CommandText = SqlStr;
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = com;
DataTable dt = new DataTable();
da.Fill(dt);//填充 dt
DataRow MyRow = dt.Rows[0];
//從數(shù)據(jù)表中提取第 0 行
TextBox1.Text = MyRow["studno"].ToString();
TextBox2.Text= MyRow["studname"].ToString();//從行中提取字段值,并賦值給文本框
TextBox3.Text = MyRow["studsex"].ToString();
TextBox4.Text = MyRow["classid"].ToString();
TextBox6.Text = MyRow["studbirthday"].ToString();
conn.Close();
}
} 添加提交按鈕事件代碼:
protected void ButtonSubmit_Click(object sender,EventArgs e)
{
SqlConnection conn = new SqlConnection();
string ConnStr =ConfigurationManager.ConnectionStrings["tsdbconnection"].ToString();
conn.ConnectionString = ConnStr;
string SqlStr = "select * from 學(xué)生表 where studno="" +TextBox1.Text +""";
SqlDataAdapter da = new SqlDataAdapter(SqlStr, conn);
SqlCommandBuilder cb = new SqlCommandBuilder(da);
DataSet ds = new DataSet();
da.Fill(ds);
ds.Tables[0].Rows[0]["studno"] = TextBox1.Text;
ds.Tables[0].Rows[0]["studname"] = TextBox2.Text;
ds.Tables[0].Rows[0]["studsex"] = TextBox3.Text;
ds.Tables[0].Rows[0]["classid"] = TextBox4.Text;
ds.Tables[0].Rows[0]["studbirthday"] = TextBox6.Text;
da.Update(ds);
conn.Close();
Response.Write("<script>alert("記錄更新成功!");</script>");
} 添加返回按鈕事件代碼:
protectedvoid ButtonBack_Click(object sender, EventArgs e)
{
Response.Redirect("查詢.aspx");
}
熱點文章閱讀