第八天

简介:
学习目的
     学会SQL中的占位符用法

在鲸鱼这几天忙死了,好几天没写了,真对不起各位。这几天让XHTML闹得不开心,虽然以前也知道这个,但没太在意。可现在我是如梦初醒,我发觉XHTML是个信号,所以这几天不得不仔细研究一下这个。很笨,我还没发觉XHTML的奥妙。确实如此,没上过台面,真不知这桌菜怎样好吃。少说了,回到正题。

先把以前的Command的CommandText重新写过:
cmd.CommandText = "INSERT INTO NewsArticle (Title, SubTitle, Writer, Content)"
                                   + " valueS ( @Title, @SubTitle, @Writer, @Content )";
这样代码是否很清晰了,我们可以避免一大串的难以看懂的的语句了。

接下来,我们就给这些定位符赋予属性和值了:
cmd.Parameters.Add("@Title", SqlDbType.NVarChar, 50);
cmd.Parameters.Add("@SubTitle", SqlDbType.NVarChar, 50);
cmd.Parameters.Add("@Writer", SqlDbType.NVarChar, 10);
cmd.Parameters.Add("@Content", SqlDbType.NText);

以上我们给每个占位符定义一个值类型,相信不难看懂吧。接者再给于值:
cmd.Parameters["@Title"].value = txtTitle.Text.Trim();
if (txtSubTitle.Text == string.Empty || txtSubTitle.Text.Trim() == "")
{
     cmd.Parameters["@SubTitle"].value = DBNull.value;
}
else
{
     cmd.Parameters["@SubTitle"].value = txtSubTitle.Text.Trim();
}
if (txtWriter.Text == string.Empty || txtWriter.Text.Trim() == "")
{
     cmd.Parameters["@Writer"].value = DBNull.value;
}
else
{
     cmd.Parameters["@Writer"].value = txtWriter.Text;
}
cmd.Parameters["@Content"].value = txtContent.Text;

其实,也可以这样写:
cmd.Parameters.Add("@Title", SqlDbType.NVarChar, 50) .value = txtTitle.Text.Trim();
这要看你喜欢了。

不错吧,程序是否很有条理。

程序代码:
          private void btnPublish_ServerClick( object sender, System.EventArgs e)
          {
               string strConnection = ConfigurationSettings.AppSettings["SqlDatabase1"];

               // 连接SqlServer数据库
               SqlConnection conn = new SqlConnection(strConnection);
               // 建立SqlCommand
               SqlCommand cmd = conn.CreateCommand();
               cmd.CommandText = "INSERT INTO NewsArticle (Title, SubTitle, Writer, Content)"
                                                       + " valueS ( @Title, @SubTitle, @Writer, @Content )";
               conn.Open();

               cmd.Parameters.Add("@Title", SqlDbType.NVarChar, 50);
               cmd.Parameters.Add("@SubTitle", SqlDbType.NVarChar, 50);
               cmd.Parameters.Add("@Writer", SqlDbType.NVarChar, 10);
               cmd.Parameters.Add("@Content", SqlDbType.NText);

               cmd.Parameters["@Title"].value = txtTitle.Text.Trim();
               if (txtSubTitle.Text == string.Empty || txtSubTitle.Text.Trim() == "")
               {
                    cmd.Parameters["@SubTitle"].value = DBNull.value;
               }
               else
               {
                    cmd.Parameters["@SubTitle"].value = txtSubTitle.Text.Trim();
               }
               if (txtWriter.Text == string.Empty || txtWriter.Text.Trim() == "")
               {
                    cmd.Parameters["@Writer"].value = DBNull.value;
               }
               else
               {
                    cmd.Parameters["@Writer"].value = txtWriter.Text;
               }
               cmd.Parameters["@Content"].value = txtContent.Text;
               // 插入记录
               try
               {
                    cmd.ExecuteNonQuery();
               }
               catch (Exception ex)
               {
                    Response.Write("<script language=javascript>alert('输入错误,数据库不能更新。')</script>");
               }
               finally
               {
                    conn.Close();
               }
          }


本文转自左洸博客园博客,原文链接:http://www.cnblogs.com/myqiao/articles/233180.html,如需转载请自行联系原作者


目录
相关文章
|
14天前
|
人工智能 小程序
小小万年历改头换面了
小小万年历改头换面了
10 0
|
编解码 Python
Python3,我把新年祝福写在“雨“中,你看,雨一直下,气氛还算融洽,在同个屋檐下....
Python3,我把新年祝福写在“雨“中,你看,雨一直下,气氛还算融洽,在同个屋檐下....
60 0
|
程序员 Go 网络安全
随笔第二周
且视他人之疑目如盏盏鬼火, 大胆去走你的夜路。 ——史铁生《病隙碎笔》
99 0
|
存储 算法
每日一题冲刺大厂第八天 二叉树深度
大家好,我是泡泡,给大家带来每日一题的目的是为了更好的练习算法,我们的每日一题这个月进度是数据结构,让大家练到各种各样的数据结构题目,熟悉数据结构的增删改查,一年以后,蜕变成为一个不一样的自己!
101 0
|
机器学习/深度学习 算法
每日一题冲刺大厂第十二天 杂物
大家好,我是泡泡,给大家带来每日一题的目的是为了更好的练习算法,我们的每日一题提高组是为了有余力的同学准备的,让大家练到各种各样的题目,一年以后,蜕变成为一个不一样的自己!
105 0
|
负载均衡
第七天学习笔记
参加训练营的感想与收获
|
存储 安全 搜索推荐
第六天学习笔记
案例分享——钉钉
|
程序员 Python
自学python一周,看我如何用python实现黑客帝国字母雨
自学python一周,看我如何用python实现黑客帝国字母雨
2319 0
|
Java C++ 算法
2018-05-14 第八天
一、分支选择 java 的流程控制语句 控制代码执行的一个路径、方向。   三类1.顺序执行从上到下依次执行代码。   2.分支选择根据条件 来 选择执行某些代码跳过某些代码。 3.循环某些代码反复的被执行。
1128 0