<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=ASP.NET_Tutorial%2FADO.net_Database%2FSqlServer</id>
		<title>ASP.NET Tutorial/ADO.net Database/SqlServer - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=ASP.NET_Tutorial%2FADO.net_Database%2FSqlServer"/>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=ASP.NET_Tutorial/ADO.net_Database/SqlServer&amp;action=history"/>
		<updated>2026-04-30T03:18:34Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://nfex.ru/index.php?title=ASP.NET_Tutorial/ADO.net_Database/SqlServer&amp;diff=2643&amp;oldid=prev</id>
		<title> в 15:30, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=ASP.NET_Tutorial/ADO.net_Database/SqlServer&amp;diff=2643&amp;oldid=prev"/>
				<updated>2010-05-26T15:30:57Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 15:30, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://nfex.ru/index.php?title=ASP.NET_Tutorial/ADO.net_Database/SqlServer&amp;diff=2644&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=ASP.NET_Tutorial/ADO.net_Database/SqlServer&amp;diff=2644&amp;oldid=prev"/>
				<updated>2010-05-26T11:56:38Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Connect to SQL server with integrated Authentication or SQL Authentication==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
File: Default.aspx&lt;br /&gt;
&amp;lt;%@ Page Language=&amp;quot;C#&amp;quot; AutoEventWireup=&amp;quot;true&amp;quot; CodeFile=&amp;quot;Default.aspx.cs&amp;quot; Inherits=&amp;quot;ConnectionTester&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.1//EN&amp;quot; &amp;quot;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;head runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;title&amp;gt;Untitled Page&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
    &amp;lt;form id=&amp;quot;form1&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div&amp;gt;&lt;br /&gt;
        &amp;lt;asp:RadioButton id=&amp;quot;optSQL&amp;quot; &lt;br /&gt;
                         runat=&amp;quot;server&amp;quot; &lt;br /&gt;
                         Text=&amp;quot;Use SQL Authentication (with sa account)&amp;quot; &lt;br /&gt;
                         GroupName=&amp;quot;Authentication&amp;quot; &lt;br /&gt;
                         &amp;gt;&amp;lt;/asp:RadioButton&amp;gt;&lt;br /&gt;
                         &lt;br /&gt;
    &amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;asp:RadioButton id=&amp;quot;optWindows&amp;quot; &lt;br /&gt;
                     runat=&amp;quot;server&amp;quot; &lt;br /&gt;
                     Text=&amp;quot;Use Windows Integrated Authentication&amp;quot; &lt;br /&gt;
                     GroupName=&amp;quot;Authentication&amp;quot; &lt;br /&gt;
                     Checked=&amp;quot;True&amp;quot;&amp;gt;&amp;lt;/asp:RadioButton&amp;gt;&lt;br /&gt;
        &amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;asp:button id=&amp;quot;cmdConnect&amp;quot; &lt;br /&gt;
                runat=&amp;quot;server&amp;quot; &lt;br /&gt;
                Text=&amp;quot;Connect&amp;quot; &lt;br /&gt;
                onclick=&amp;quot;cmdConnect_Click&amp;quot;&amp;gt;&amp;lt;/asp:button&amp;gt;&lt;br /&gt;
    &amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;asp:label id=&amp;quot;lblInfo&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&amp;lt;/asp:label&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
File: Default.aspx.cs&lt;br /&gt;
using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Configuration;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Web;&lt;br /&gt;
using System.Web.Security;&lt;br /&gt;
using System.Web.UI;&lt;br /&gt;
using System.Web.UI.WebControls;&lt;br /&gt;
using System.Web.UI.WebControls.WebParts;&lt;br /&gt;
using System.Web.UI.HtmlControls;&lt;br /&gt;
using System.Web.Configuration;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
public partial class ConnectionTester : System.Web.UI.Page&lt;br /&gt;
{&lt;br /&gt;
    protected void Page_Load(object sender, EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
    }&lt;br /&gt;
    protected void cmdConnect_Click(object sender, EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        string connectionString = &amp;quot;Data Source=localhost\\SQLEXPRESS;Initial Catalog=Pubs;&amp;quot;;&lt;br /&gt;
        if (optWindows.Checked)&lt;br /&gt;
        {&lt;br /&gt;
            connectionString += &amp;quot;Integrated Security=SSPI&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        else&lt;br /&gt;
        {&lt;br /&gt;
            connectionString += &amp;quot;User ID=sa&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        SqlConnection myConnection = new SqlConnection(connectionString);&lt;br /&gt;
        try&lt;br /&gt;
        {&lt;br /&gt;
            myConnection.Open();&lt;br /&gt;
            lblInfo.Text = &amp;quot;&amp;lt;b&amp;gt;Server Version:&amp;lt;/b&amp;gt; &amp;quot; + myConnection.ServerVersion;&lt;br /&gt;
            lblInfo.Text += &amp;quot;&amp;lt;br /&amp;gt;&amp;lt;b&amp;gt;Connection Is:&amp;lt;/b&amp;gt; &amp;quot; + myConnection.State.ToString();&lt;br /&gt;
        }&lt;br /&gt;
        catch (Exception err)&lt;br /&gt;
        {&lt;br /&gt;
            lblInfo.Text = &amp;quot;Error reading the database. &amp;quot;;&lt;br /&gt;
            lblInfo.Text += err.Message;&lt;br /&gt;
        }&lt;br /&gt;
        finally&lt;br /&gt;
        {&lt;br /&gt;
            myConnection.Close();&lt;br /&gt;
            lblInfo.Text += &amp;quot;&amp;lt;br /&amp;gt;&amp;lt;b&amp;gt;Now Connection Is:&amp;lt;/b&amp;gt; &amp;quot;;&lt;br /&gt;
            lblInfo.Text += myConnection.State.ToString();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Execute delete command with SqlCommand against SqlServer==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;%@ Page Language=&amp;quot;C#&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;%@ import Namespace=&amp;quot;System.Data&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;%@ import Namespace=&amp;quot;System.Data.SqlClient&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;script runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
    void Page_Load(object sender, EventArgs e) {&lt;br /&gt;
        string ConnectionString = ConfigurationSettings.AppSettings[&amp;quot;MSDEConnectString&amp;quot;];&lt;br /&gt;
        SqlConnection myConnection = new SqlConnection(ConnectionString);&lt;br /&gt;
    &lt;br /&gt;
        try{&lt;br /&gt;
            string CommandText = &amp;quot;DELETE FROM Publisher WHERE PublisherID = 6&amp;quot;;&lt;br /&gt;
            SqlCommand myCommand = new SqlCommand(CommandText, myConnection);&lt;br /&gt;
    &lt;br /&gt;
            myConnection.Open();&lt;br /&gt;
    &lt;br /&gt;
            lblRecords.Text = Convert.ToString(myCommand.ExecuteNonQuery());&lt;br /&gt;
        } catch (Exception ex){&lt;br /&gt;
            throw(ex);&lt;br /&gt;
        } finally{&lt;br /&gt;
            myConnection.Close();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
    &amp;lt;form runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
        Records affected: &amp;lt;asp:Label id=&amp;quot;lblRecords&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
    &amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
File: Web.config&lt;br /&gt;
&amp;lt;configuration&amp;gt;&lt;br /&gt;
    &amp;lt;appSettings&amp;gt;&lt;br /&gt;
        &amp;lt;add key=&amp;quot;MSDEConnectString&amp;quot; value=&amp;quot;server=(local)\YourDatabaseAddress;database=Books;uid=YourID;pwd=letmein;&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/appSettings&amp;gt;&lt;br /&gt;
&amp;lt;/configuration&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== For example, the following connection string enables you to connect to a Server database named MyData:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
Data Source=.\SQLExpress;Initial Catalog=MyData;Integrated Security=True&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Handle table relationship (C#)==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
File: Default.aspx&lt;br /&gt;
&amp;lt;%@ Page Language=&amp;quot;C#&amp;quot; AutoEventWireup=&amp;quot;true&amp;quot; CodeFile=&amp;quot;Default.aspx.cs&amp;quot; Inherits=&amp;quot;TableRelationships&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.1//EN&amp;quot; &amp;quot;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;head runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;title&amp;gt;Untitled Page&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
    &amp;lt;form id=&amp;quot;form1&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div&amp;gt;&lt;br /&gt;
        &amp;lt;asp:Label ID=&amp;quot;lblList&amp;quot; runat=&amp;quot;server&amp;quot; EnableViewState=&amp;quot;False&amp;quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
File: Default.aspx.cs&lt;br /&gt;
using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Configuration;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Web;&lt;br /&gt;
using System.Web.Security;&lt;br /&gt;
using System.Web.UI;&lt;br /&gt;
using System.Web.UI.WebControls;&lt;br /&gt;
using System.Web.UI.WebControls.WebParts;&lt;br /&gt;
using System.Web.UI.HtmlControls;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
using System.Web.Configuration;&lt;br /&gt;
public partial class TableRelationships : System.Web.UI.Page&lt;br /&gt;
{&lt;br /&gt;
    protected void Page_Load(object sender, EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        if (!this.IsPostBack)&lt;br /&gt;
        {&lt;br /&gt;
            CreateList();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    private string connectionString = WebConfigurationManager.ConnectionStrings[&amp;quot;Pubs&amp;quot;].ConnectionString;&lt;br /&gt;
&lt;br /&gt;
    private void CreateList()&lt;br /&gt;
    {&lt;br /&gt;
        string selectSQL = &amp;quot;SELECT au_lname, au_fname, au_id FROM Authors&amp;quot;;&lt;br /&gt;
        SqlConnection con = new SqlConnection(connectionString);&lt;br /&gt;
        SqlCommand cmd = new SqlCommand(selectSQL, con);&lt;br /&gt;
        SqlDataAdapter adapter = new SqlDataAdapter(cmd);&lt;br /&gt;
        DataSet dsPubs = new DataSet();&lt;br /&gt;
        try&lt;br /&gt;
        {&lt;br /&gt;
            con.Open();&lt;br /&gt;
            adapter.Fill(dsPubs, &amp;quot;Authors&amp;quot;);&lt;br /&gt;
            cmd.rumandText = &amp;quot;SELECT au_id, title_id FROM TitleAuthor&amp;quot;;&lt;br /&gt;
            adapter.Fill(dsPubs, &amp;quot;TitleAuthor&amp;quot;);&lt;br /&gt;
            cmd.rumandText = &amp;quot;SELECT title_id, title FROM Titles&amp;quot;;&lt;br /&gt;
            adapter.Fill(dsPubs, &amp;quot;Titles&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
        catch (Exception err)&lt;br /&gt;
        {&lt;br /&gt;
            lblList.Text = &amp;quot;Error reading list of names. &amp;quot;;&lt;br /&gt;
            lblList.Text += err.Message;&lt;br /&gt;
        }&lt;br /&gt;
        finally&lt;br /&gt;
        {&lt;br /&gt;
            con.Close();&lt;br /&gt;
        }&lt;br /&gt;
        DataRelation Titles_TitleAuthor = new DataRelation(&amp;quot;Titles_TitleAuthor&amp;quot;,dsPubs.Tables[&amp;quot;Titles&amp;quot;].Columns[&amp;quot;title_id&amp;quot;],dsPubs.Tables[&amp;quot;TitleAuthor&amp;quot;].Columns[&amp;quot;title_id&amp;quot;]);&lt;br /&gt;
        DataRelation Authors_TitleAuthor = new DataRelation(&amp;quot;Authors_TitleAuthor&amp;quot;,dsPubs.Tables[&amp;quot;Authors&amp;quot;].Columns[&amp;quot;au_id&amp;quot;],dsPubs.Tables[&amp;quot;TitleAuthor&amp;quot;].Columns[&amp;quot;au_id&amp;quot;]);&lt;br /&gt;
        dsPubs.Relations.Add(Titles_TitleAuthor);&lt;br /&gt;
        dsPubs.Relations.Add(Authors_TitleAuthor);&lt;br /&gt;
        foreach (DataRow rowAuthor in dsPubs.Tables[&amp;quot;Authors&amp;quot;].Rows)&lt;br /&gt;
        {&lt;br /&gt;
            lblList.Text += &amp;quot;&amp;lt;br /&amp;gt;&amp;lt;b&amp;gt;&amp;quot; + rowAuthor[&amp;quot;au_fname&amp;quot;];&lt;br /&gt;
            lblList.Text += &amp;quot; &amp;quot; + rowAuthor[&amp;quot;au_lname&amp;quot;] + &amp;quot;&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&amp;quot;;&lt;br /&gt;
            foreach (DataRow rowTitleAuthor in&lt;br /&gt;
                rowAuthor.GetChildRows(Authors_TitleAuthor))&lt;br /&gt;
            {&lt;br /&gt;
                foreach (DataRow rowTitle in&lt;br /&gt;
                    rowTitleAuthor.GetParentRows(Titles_TitleAuthor))&lt;br /&gt;
                {&lt;br /&gt;
                    lblList.Text += &amp;quot;&amp;amp;nbsp;&amp;amp;nbsp;&amp;quot;;&lt;br /&gt;
                    lblList.Text += rowTitle[&amp;quot;title&amp;quot;] + &amp;quot;&amp;lt;br /&amp;gt;&amp;quot;;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
File: Web.config&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;configuration&amp;gt;&lt;br /&gt;
  &amp;lt;connectionStrings&amp;gt;&lt;br /&gt;
    &amp;lt;add name=&amp;quot;Pubs&amp;quot; connectionString=&amp;quot;Data Source=localhost\SQLEXPRESS;Initial Catalog=Pubs;Integrated Security=SSPI&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;/connectionStrings&amp;gt;&lt;br /&gt;
&amp;lt;/configuration&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Insert, update and delete (C#)==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
File: Default.aspx&lt;br /&gt;
&amp;lt;%@ Page Language=&amp;quot;C#&amp;quot; AutoEventWireup=&amp;quot;true&amp;quot; CodeFile=&amp;quot;Default.aspx.cs&amp;quot; Inherits=&amp;quot;AuthorManager&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.1//EN&amp;quot; &amp;quot;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;head runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;title&amp;gt;Untitled Page&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
    &amp;lt;form id=&amp;quot;form1&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div&amp;gt;&lt;br /&gt;
        &amp;lt;div&amp;gt;&lt;br /&gt;
      &amp;lt;br /&amp;gt;&lt;br /&gt;
      &amp;lt;asp:Label id=&amp;quot;Label1&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;Select Author:&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
      &amp;lt;asp:DropDownList id=&amp;quot;lstAuthor&amp;quot; runat=&amp;quot;server&amp;quot; AutoPostBack=&amp;quot;True&amp;quot; onselectedindexchanged=&amp;quot;lstAuthor_SelectedIndexChanged&amp;quot;&amp;gt;&amp;lt;/asp:DropDownList&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
      &amp;lt;asp:Button id=&amp;quot;cmdUpdate&amp;quot; runat=&amp;quot;server&amp;quot; Text=&amp;quot;Update&amp;quot; onclick=&amp;quot;cmdUpdate_Click&amp;quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&amp;amp;nbsp;&lt;br /&gt;
      &amp;lt;asp:Button id=&amp;quot;cmdDelete&amp;quot; runat=&amp;quot;server&amp;quot; Text=&amp;quot;Delete&amp;quot; onclick=&amp;quot;cmdDelete_Click&amp;quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;br /&gt;
      &amp;lt;br /&amp;gt;&lt;br /&gt;
      &amp;lt;asp:Label id=&amp;quot;Label11&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;99px&amp;quot; Height=&amp;quot;19px&amp;quot;&amp;gt;Or:&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
      &amp;lt;asp:Button id=&amp;quot;cmdNew&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;91px&amp;quot; Height=&amp;quot;24px&amp;quot; Text=&amp;quot;Create New&amp;quot; onclick=&amp;quot;cmdNew_Click&amp;quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&amp;amp;nbsp;&lt;br /&gt;
      &amp;lt;asp:Button id=&amp;quot;cmdInsert&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;85px&amp;quot; Height=&amp;quot;24px&amp;quot; Text=&amp;quot;Insert New&amp;quot; onclick=&amp;quot;cmdInsert_Click&amp;quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div&amp;gt;&lt;br /&gt;
      &amp;lt;asp:Label id=&amp;quot;Label10&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;100px&amp;quot;&amp;gt;Unique ID:&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
      &amp;lt;asp:TextBox id=&amp;quot;txtID&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;184px&amp;quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&amp;amp;nbsp; &lt;br /&gt;
      (required:&amp;amp;nbsp;###-##-#### form)&amp;lt;br /&amp;gt;&lt;br /&gt;
      &lt;br /&gt;
      &amp;lt;asp:Label id=&amp;quot;Label2&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;100px&amp;quot;&amp;gt;First Name:&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
      &amp;lt;asp:TextBox id=&amp;quot;txtFirstName&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;184px&amp;quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
      &lt;br /&gt;
      &amp;lt;asp:Label id=&amp;quot;Label3&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;100px&amp;quot;&amp;gt;Last Name:&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
      &amp;lt;asp:TextBox id=&amp;quot;txtLastName&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;183px&amp;quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
      &lt;br /&gt;
      &amp;lt;asp:Label id=&amp;quot;Label4&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;100px&amp;quot;&amp;gt;Phone:&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
      &amp;lt;asp:TextBox id=&amp;quot;txtPhone&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;183px&amp;quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
      &lt;br /&gt;
      &amp;lt;asp:Label id=&amp;quot;Label5&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;100px&amp;quot;&amp;gt;Address:&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
      &amp;lt;asp:TextBox id=&amp;quot;txtAddress&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;183px&amp;quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
      &lt;br /&gt;
      &amp;lt;asp:Label id=&amp;quot;Label6&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;100px&amp;quot;&amp;gt;City:&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
      &amp;lt;asp:TextBox id=&amp;quot;txtCity&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;184px&amp;quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
      &lt;br /&gt;
      &amp;lt;asp:Label id=&amp;quot;Label7&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;100px&amp;quot;&amp;gt;State:&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
      &amp;lt;asp:TextBox id=&amp;quot;txtState&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;184px&amp;quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
      &lt;br /&gt;
      &amp;lt;asp:Label id=&amp;quot;Label9&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;100px&amp;quot;&amp;gt;Zip Code:&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
      &amp;lt;asp:TextBox id=&amp;quot;txtZip&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;184px&amp;quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&amp;amp;nbsp; &lt;br /&gt;
      (required: any five&amp;amp;nbsp;digits)&amp;lt;br /&amp;gt;&lt;br /&gt;
      &amp;lt;br /&amp;gt;&lt;br /&gt;
      &lt;br /&gt;
      &amp;lt;asp:Label id=&amp;quot;Label8&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;93px&amp;quot; Height=&amp;quot;19px&amp;quot;&amp;gt;Contract:&amp;lt;/asp:Label&amp;gt;&amp;amp;nbsp;&lt;br /&gt;
      &amp;lt;asp:CheckBox id=&amp;quot;chkContract&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&amp;lt;/asp:CheckBox&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
      &amp;lt;br /&amp;gt;&lt;br /&gt;
      &lt;br /&gt;
      &amp;lt;asp:Label id=&amp;quot;lblResults&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;575px&amp;quot; Height=&amp;quot;121px&amp;quot; Font-Bold=&amp;quot;True&amp;quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
File: Default.aspx.cs&lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Configuration;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Web;&lt;br /&gt;
using System.Web.Security;&lt;br /&gt;
using System.Web.UI;&lt;br /&gt;
using System.Web.UI.WebControls;&lt;br /&gt;
using System.Web.UI.WebControls.WebParts;&lt;br /&gt;
using System.Web.UI.HtmlControls;&lt;br /&gt;
using System.Web.Configuration;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
public partial class AuthorManager : System.Web.UI.Page&lt;br /&gt;
{&lt;br /&gt;
    private string connectionString = WebConfigurationManager.ConnectionStrings[&amp;quot;Pubs&amp;quot;].ConnectionString;&lt;br /&gt;
&lt;br /&gt;
    protected void Page_Load(object sender, EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        if (!this.IsPostBack)&lt;br /&gt;
        {&lt;br /&gt;
            FillAuthorList();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    private void FillAuthorList()&lt;br /&gt;
    {&lt;br /&gt;
        lstAuthor.Items.Clear();&lt;br /&gt;
        string selectSQL = &amp;quot;SELECT au_lname, au_fname, au_id FROM Authors&amp;quot;;&lt;br /&gt;
        SqlConnection con = new SqlConnection(connectionString);&lt;br /&gt;
        SqlCommand cmd = new SqlCommand(selectSQL, con);&lt;br /&gt;
        SqlDataReader reader;&lt;br /&gt;
        try&lt;br /&gt;
        {&lt;br /&gt;
            con.Open();&lt;br /&gt;
            reader = cmd.ExecuteReader();&lt;br /&gt;
            while (reader.Read())&lt;br /&gt;
            {&lt;br /&gt;
                ListItem newItem = new ListItem();&lt;br /&gt;
                newItem.Text = reader[&amp;quot;au_lname&amp;quot;] + &amp;quot;, &amp;quot; + reader[&amp;quot;au_fname&amp;quot;];&lt;br /&gt;
                newItem.Value = reader[&amp;quot;au_id&amp;quot;].ToString();&lt;br /&gt;
                lstAuthor.Items.Add(newItem);&lt;br /&gt;
            }&lt;br /&gt;
            reader.Close();&lt;br /&gt;
        }&lt;br /&gt;
        catch (Exception err)&lt;br /&gt;
        {&lt;br /&gt;
            lblResults.Text = &amp;quot;Error reading list of names. &amp;quot;;&lt;br /&gt;
            lblResults.Text += err.Message;&lt;br /&gt;
        }&lt;br /&gt;
        finally&lt;br /&gt;
        {&lt;br /&gt;
            con.Close();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    protected void lstAuthor_SelectedIndexChanged(object sender, EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        string selectSQL;&lt;br /&gt;
        selectSQL = &amp;quot;SELECT * FROM Authors &amp;quot;;&lt;br /&gt;
        selectSQL += &amp;quot;WHERE au_id=&amp;quot;&amp;quot; + lstAuthor.SelectedItem.Value + &amp;quot;&amp;quot;&amp;quot;;&lt;br /&gt;
        SqlConnection con = new SqlConnection(connectionString);&lt;br /&gt;
        SqlCommand cmd = new SqlCommand(selectSQL, con);&lt;br /&gt;
        SqlDataReader reader;&lt;br /&gt;
        try&lt;br /&gt;
        {&lt;br /&gt;
            con.Open();&lt;br /&gt;
            reader = cmd.ExecuteReader();&lt;br /&gt;
            reader.Read();&lt;br /&gt;
            txtID.Text = reader[&amp;quot;au_id&amp;quot;].ToString();&lt;br /&gt;
            txtFirstName.Text = reader[&amp;quot;au_fname&amp;quot;].ToString();&lt;br /&gt;
            txtLastName.Text = reader[&amp;quot;au_lname&amp;quot;].ToString();&lt;br /&gt;
            txtPhone.Text = reader[&amp;quot;phone&amp;quot;].ToString();&lt;br /&gt;
            txtAddress.Text = reader[&amp;quot;address&amp;quot;].ToString();&lt;br /&gt;
            txtCity.Text = reader[&amp;quot;city&amp;quot;].ToString();&lt;br /&gt;
            txtState.Text = reader[&amp;quot;state&amp;quot;].ToString();&lt;br /&gt;
            txtZip.Text = reader[&amp;quot;zip&amp;quot;].ToString();&lt;br /&gt;
            chkContract.Checked = (bool)reader[&amp;quot;contract&amp;quot;];&lt;br /&gt;
            reader.Close();&lt;br /&gt;
            lblResults.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        catch (Exception err)&lt;br /&gt;
        {&lt;br /&gt;
            lblResults.Text = &amp;quot;Error getting author. &amp;quot;;&lt;br /&gt;
            lblResults.Text += err.Message;&lt;br /&gt;
        }&lt;br /&gt;
        finally&lt;br /&gt;
        {&lt;br /&gt;
            con.Close();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    protected void cmdNew_Click(object sender, EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        txtID.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
        txtFirstName.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
        txtLastName.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
        txtPhone.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
        txtAddress.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
        txtCity.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
        txtState.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
        txtZip.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
        chkContract.Checked = false;&lt;br /&gt;
        &lt;br /&gt;
        lblResults.Text = &amp;quot;Click Insert New to add the completed record.&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
    protected void cmdInsert_Click(object sender, EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        if (txtID.Text == &amp;quot;&amp;quot; || txtFirstName.Text == &amp;quot;&amp;quot; || txtLastName.Text == &amp;quot;&amp;quot;)&lt;br /&gt;
        {&lt;br /&gt;
            lblResults.Text = &amp;quot;Records require an ID, first name, and last name.&amp;quot;;&lt;br /&gt;
            return;&lt;br /&gt;
        }&lt;br /&gt;
        string insertSQL;&lt;br /&gt;
        insertSQL = &amp;quot;INSERT INTO Authors (&amp;quot;;&lt;br /&gt;
        insertSQL += &amp;quot;au_id, au_fname, au_lname, &amp;quot;;&lt;br /&gt;
        insertSQL += &amp;quot;phone, address, city, state, zip, contract) &amp;quot;;&lt;br /&gt;
        insertSQL += &amp;quot;VALUES (&amp;quot;;&lt;br /&gt;
        insertSQL += &amp;quot;@au_id, @au_fname, @au_lname, &amp;quot;;&lt;br /&gt;
        insertSQL += &amp;quot;@phone, @address, @city, @state, @zip, @contract)&amp;quot;;&lt;br /&gt;
        SqlConnection con = new SqlConnection(connectionString);&lt;br /&gt;
        SqlCommand cmd = new SqlCommand(insertSQL, con);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@au_id&amp;quot;, txtID.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@au_fname&amp;quot;, txtFirstName.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@au_Lname&amp;quot;, txtLastName.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@phone&amp;quot;, txtPhone.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@address&amp;quot;, txtAddress.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@city&amp;quot;, txtCity.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@state&amp;quot;, txtState.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@zip&amp;quot;, txtZip.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@contract&amp;quot;, Convert.ToInt16(chkContract.Checked));&lt;br /&gt;
        int added = 0;&lt;br /&gt;
        try&lt;br /&gt;
        {&lt;br /&gt;
            con.Open();&lt;br /&gt;
            added = cmd.ExecuteNonQuery();&lt;br /&gt;
            lblResults.Text = added.ToString() + &amp;quot; record inserted.&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        catch (Exception err)&lt;br /&gt;
        {&lt;br /&gt;
            lblResults.Text = &amp;quot;Error inserting record. &amp;quot;;&lt;br /&gt;
            lblResults.Text += err.Message;&lt;br /&gt;
        }&lt;br /&gt;
        finally&lt;br /&gt;
        {&lt;br /&gt;
            con.Close();&lt;br /&gt;
        }&lt;br /&gt;
        if (added &amp;gt; 0)&lt;br /&gt;
        {&lt;br /&gt;
            FillAuthorList();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    protected void cmdUpdate_Click(object sender, EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        string updateSQL;&lt;br /&gt;
        updateSQL = &amp;quot;UPDATE Authors SET &amp;quot;;&lt;br /&gt;
        updateSQL += &amp;quot;au_fname=@au_fname, au_lname=@au_lname, &amp;quot;;&lt;br /&gt;
        updateSQL += &amp;quot;phone=@phone, address=@address, city=@city, state=@state, &amp;quot;;&lt;br /&gt;
        updateSQL += &amp;quot;zip=@zip, contract=@contract &amp;quot;;&lt;br /&gt;
        updateSQL += &amp;quot;WHERE au_id=@au_id_original&amp;quot;;&lt;br /&gt;
        SqlConnection con = new SqlConnection(connectionString);&lt;br /&gt;
        SqlCommand cmd = new SqlCommand(updateSQL, con);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@au_fname&amp;quot;, txtFirstName.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@au_Lname&amp;quot;, txtLastName.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@phone&amp;quot;, txtPhone.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@address&amp;quot;, txtAddress.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@city&amp;quot;, txtCity.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@state&amp;quot;, txtState.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@zip&amp;quot;, txtZip.Text);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@contract&amp;quot;, Convert.ToInt16(chkContract.Checked));&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@au_id_original&amp;quot;, lstAuthor.SelectedItem.Value);&lt;br /&gt;
        int updated = 0;&lt;br /&gt;
        try&lt;br /&gt;
        {&lt;br /&gt;
            con.Open();&lt;br /&gt;
            updated = cmd.ExecuteNonQuery();&lt;br /&gt;
            lblResults.Text = updated.ToString() + &amp;quot; record updated.&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        catch (Exception err)&lt;br /&gt;
        {&lt;br /&gt;
            lblResults.Text = &amp;quot;Error updating author. &amp;quot;;&lt;br /&gt;
            lblResults.Text += err.Message;&lt;br /&gt;
        }&lt;br /&gt;
        finally&lt;br /&gt;
        {&lt;br /&gt;
            con.Close();&lt;br /&gt;
        }&lt;br /&gt;
        if (updated &amp;gt; 0)&lt;br /&gt;
        {&lt;br /&gt;
            FillAuthorList();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    protected void cmdDelete_Click(object sender, EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        string deleteSQL;&lt;br /&gt;
        deleteSQL = &amp;quot;DELETE FROM Authors &amp;quot;;&lt;br /&gt;
        deleteSQL += &amp;quot;WHERE au_id=@au_id&amp;quot;;&lt;br /&gt;
        SqlConnection con = new SqlConnection(connectionString);&lt;br /&gt;
        SqlCommand cmd = new SqlCommand(deleteSQL, con);&lt;br /&gt;
        cmd.Parameters.AddWithValue(&amp;quot;@au_id &amp;quot;, lstAuthor.SelectedItem.Value);&lt;br /&gt;
        int deleted = 0;&lt;br /&gt;
        try&lt;br /&gt;
        {&lt;br /&gt;
            con.Open();&lt;br /&gt;
            deleted = cmd.ExecuteNonQuery();&lt;br /&gt;
            lblResults.Text = &amp;quot;Record deleted.&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        catch (Exception err)&lt;br /&gt;
        {&lt;br /&gt;
            lblResults.Text = &amp;quot;Error deleting author. &amp;quot;;&lt;br /&gt;
            lblResults.Text += err.Message;&lt;br /&gt;
        }&lt;br /&gt;
        finally&lt;br /&gt;
        {&lt;br /&gt;
            con.Close();&lt;br /&gt;
        }&lt;br /&gt;
        if (deleted &amp;gt; 0)&lt;br /&gt;
        {&lt;br /&gt;
            FillAuthorList();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
File: Web.config&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;configuration&amp;gt;&lt;br /&gt;
  &amp;lt;connectionStrings&amp;gt;&lt;br /&gt;
    &amp;lt;add name=&amp;quot;Pubs&amp;quot; connectionString=&amp;quot;Data Source=localhost\SQLEXPRESS;Initial Catalog=Pubs;Integrated Security=SSPI&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;/connectionStrings&amp;gt;&lt;br /&gt;
&amp;lt;/configuration&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Read data from SQL server and fill asp:dropdownlist (C#)==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
File: Default.aspx&lt;br /&gt;
&amp;lt;%@ Page Language=&amp;quot;C#&amp;quot; AutoEventWireup=&amp;quot;true&amp;quot; CodeFile=&amp;quot;Default.aspx.cs&amp;quot; Inherits=&amp;quot;AuthorBrowser&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.1//EN&amp;quot; &amp;quot;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;head runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;title&amp;gt;Untitled Page&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
    &amp;lt;form id=&amp;quot;form1&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div&amp;gt;&lt;br /&gt;
        &amp;lt;asp:label id=&amp;quot;Label1&amp;quot; &lt;br /&gt;
                   runat=&amp;quot;server&amp;quot; &lt;br /&gt;
                   Width=&amp;quot;120px&amp;quot; &lt;br /&gt;
                   Height=&amp;quot;20px&amp;quot;&amp;gt;Select Author:&amp;lt;/asp:label&amp;gt;&amp;amp;nbsp;&lt;br /&gt;
    &amp;lt;asp:dropdownlist id=&amp;quot;lstAuthor&amp;quot; &lt;br /&gt;
                      runat=&amp;quot;server&amp;quot; &lt;br /&gt;
                      Width=&amp;quot;256px&amp;quot; &lt;br /&gt;
                      Height=&amp;quot;22px&amp;quot; &lt;br /&gt;
                      AutoPostBack=&amp;quot;True&amp;quot; &lt;br /&gt;
                      onselectedindexchanged=&amp;quot;lstAuthor_SelectedIndexChanged&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;/asp:dropdownlist&amp;gt;&lt;br /&gt;
        &amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;asp:label id=&amp;quot;lblResults&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;384px&amp;quot; Height=&amp;quot;168px&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;/asp:label&amp;gt;&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
File: Default.aspx.cs&lt;br /&gt;
using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Configuration;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Web;&lt;br /&gt;
using System.Web.Security;&lt;br /&gt;
using System.Web.UI;&lt;br /&gt;
using System.Web.UI.WebControls;&lt;br /&gt;
using System.Web.UI.WebControls.WebParts;&lt;br /&gt;
using System.Web.UI.HtmlControls;&lt;br /&gt;
using System.Web.Configuration;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
using System.Text;&lt;br /&gt;
public partial class AuthorBrowser : System.Web.UI.Page&lt;br /&gt;
{&lt;br /&gt;
    private string connectionString = WebConfigurationManager.ConnectionStrings[&amp;quot;Pubs&amp;quot;].ConnectionString;&lt;br /&gt;
&lt;br /&gt;
    protected void Page_Load(object sender, EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        if (!this.IsPostBack)&lt;br /&gt;
        {&lt;br /&gt;
            FillAuthorList();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    private void FillAuthorList()&lt;br /&gt;
    {&lt;br /&gt;
        lstAuthor.Items.Clear();&lt;br /&gt;
        string selectSQL = &amp;quot;SELECT au_lname, au_fname, au_id FROM Authors&amp;quot;;&lt;br /&gt;
        SqlConnection con = new SqlConnection(connectionString);&lt;br /&gt;
        SqlCommand cmd = new SqlCommand(selectSQL, con);&lt;br /&gt;
        SqlDataReader reader;&lt;br /&gt;
        try&lt;br /&gt;
        {&lt;br /&gt;
            con.Open();&lt;br /&gt;
            reader = cmd.ExecuteReader();&lt;br /&gt;
            while (reader.Read())&lt;br /&gt;
            {&lt;br /&gt;
                ListItem newItem = new ListItem();&lt;br /&gt;
                newItem.Text = reader[&amp;quot;au_lname&amp;quot;] + &amp;quot;, &amp;quot; + reader[&amp;quot;au_fname&amp;quot;];&lt;br /&gt;
                newItem.Value = reader[&amp;quot;au_id&amp;quot;].ToString();&lt;br /&gt;
                lstAuthor.Items.Add(newItem);&lt;br /&gt;
            }&lt;br /&gt;
            reader.Close();&lt;br /&gt;
        }&lt;br /&gt;
        catch (Exception err)&lt;br /&gt;
        {&lt;br /&gt;
            lblResults.Text = &amp;quot;Error reading list of names. &amp;quot;;&lt;br /&gt;
            lblResults.Text += err.Message;&lt;br /&gt;
        }&lt;br /&gt;
        finally&lt;br /&gt;
        {&lt;br /&gt;
            con.Close();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    protected void lstAuthor_SelectedIndexChanged(object sender, EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        string selectSQL;&lt;br /&gt;
        selectSQL = &amp;quot;SELECT * FROM Authors &amp;quot;;&lt;br /&gt;
        selectSQL += &amp;quot;WHERE au_id=&amp;quot;&amp;quot; + lstAuthor.SelectedItem.Value + &amp;quot;&amp;quot;&amp;quot;;&lt;br /&gt;
        SqlConnection con = new SqlConnection(connectionString);&lt;br /&gt;
        SqlCommand cmd = new SqlCommand(selectSQL, con);&lt;br /&gt;
        SqlDataReader reader;&lt;br /&gt;
        try&lt;br /&gt;
        {&lt;br /&gt;
            con.Open();&lt;br /&gt;
            reader = cmd.ExecuteReader();&lt;br /&gt;
            reader.Read();&lt;br /&gt;
            StringBuilder sb = new StringBuilder();&lt;br /&gt;
            sb.Append(&amp;quot;&amp;lt;b&amp;gt;&amp;quot;);&lt;br /&gt;
            sb.Append(reader[&amp;quot;au_lname&amp;quot;]);&lt;br /&gt;
            sb.Append(&amp;quot;, &amp;quot;);&lt;br /&gt;
            sb.Append(reader[&amp;quot;au_fname&amp;quot;]);&lt;br /&gt;
            sb.Append(&amp;quot;&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&amp;quot;);&lt;br /&gt;
            sb.Append(&amp;quot;Phone: &amp;quot;);&lt;br /&gt;
            sb.Append(reader[&amp;quot;phone&amp;quot;]);&lt;br /&gt;
            sb.Append(&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;);&lt;br /&gt;
            sb.Append(&amp;quot;Address: &amp;quot;);&lt;br /&gt;
            sb.Append(reader[&amp;quot;address&amp;quot;]);&lt;br /&gt;
            sb.Append(&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;);&lt;br /&gt;
            sb.Append(&amp;quot;City: &amp;quot;);&lt;br /&gt;
            sb.Append(reader[&amp;quot;city&amp;quot;]);&lt;br /&gt;
            sb.Append(&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;);&lt;br /&gt;
            sb.Append(&amp;quot;State: &amp;quot;);&lt;br /&gt;
            sb.Append(reader[&amp;quot;state&amp;quot;]);&lt;br /&gt;
            sb.Append(&amp;quot;&amp;lt;br /&amp;gt;&amp;quot;);&lt;br /&gt;
            lblResults.Text = sb.ToString();&lt;br /&gt;
            reader.Close();&lt;br /&gt;
        }&lt;br /&gt;
        catch (Exception err)&lt;br /&gt;
        {&lt;br /&gt;
            lblResults.Text = &amp;quot;Error getting author. &amp;quot;;&lt;br /&gt;
            lblResults.Text += err.Message;&lt;br /&gt;
        }&lt;br /&gt;
        finally&lt;br /&gt;
        {&lt;br /&gt;
            con.Close();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
File: Web.config&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;configuration&amp;gt;&lt;br /&gt;
  &amp;lt;connectionStrings&amp;gt;&lt;br /&gt;
    &amp;lt;add name=&amp;quot;Pubs&amp;quot; connectionString=&amp;quot;Data Source=localhost\SQLEXPRESS;Initial Catalog=Pubs;Integrated Security=SSPI&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;/connectionStrings&amp;gt;&lt;br /&gt;
&amp;lt;/configuration&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== You can connect to a Local database named MyLocalData.mdf by using the following connection string:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|MyLocalData.mdf;&lt;br /&gt;
Integrated Security=True;User Instance=True&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== You use SQLCMD by opening a command prompt and connecting to your database with the following command:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
SQLCMD -S .\SQLExpress&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>