学习ASP.NET八天入门:第八天
来源:cnplayer.com 发布时间:2007-08-07 13:55:00
标签:asp.net,sql,占位符,用法
学习目的
学会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();
}
}
相关阅读:


猜你喜欢
- 前言Django项目本身就可以启动运行,为什么还需要部署到Apache或者Nginx上呢?初学者都会遇到这个问题,我们来看看官方解释:It&
- 最近ChatGpt异常火热,访问网站经常会出现1020的错误代码,或无法访问。大概率是因为服务器压力大,网关返回的1020错误码,只能等待官
- 前言最近因为工作的需要,在写一些python脚本,总是使用print来打印信息感觉很low,所以抽空研究了一下python的logging库
- <script language='javascript' for='document' event=
- Web 标准要求一览表Russ WeakleyJjgod Jiang14-Aug-2004目录1 Web 标准,不仅仅是“不用表格的站点”2
- Pillow图像降噪处理由于成像设备、传输媒介等因素的影响,图像总会或多或少的存在一些不必要的干扰信息,我们将这些干扰信息统称为&l
- UUID 全称是 Universally unique identifier,它是一种识别符,使用任意的计算机都可以生成,不需要一个中央数据
- 本文实例讲述了Python 私有化操作。分享给大家供大家参考,具体如下:私有化xx: 公有变量_x: 单前置下划线,私有化属性或方法,fro
- 在IE进行文档链接时,如果遇到OLE支持的文档,IE会自动调用相应程序打开它,有时候这种功能并不是我们所需的,虽然我们可以提醒用户用鼠标右键
- 如果你有一批IP地址想要获得这些IP具体的信息,比如归属国家,城市等,最好的办法当时是调用现有的api接口来获取,我在之前就写过一篇文章,是
- 其实canvas本身很简单,就是去学习它的API,多看实例,多自己动手练习,多总结。但是canvas的API实在是有点多,对于初学者来说,可
- 本文实例为大家分享了python实现录音功能的具体代码,供大家参考,具体内容如下# -*- coding: utf-8 -*-import
- 出现这个问题解决方法:点击File > Settings > Tools > Server Certificates &g
- MySQL为开源数据库,因此可以基于源码实现安装。基于源码安装有更多的灵活性。也就是说我们可以针对自己的硬件平台选用合适的编译器来优化编译后
- 如何在VS2013下对MySQL5.6进行连接,本文为大家提供了解决方案,供大家参考,具体内容如下环境:win832系统,VS2013,My
- MySQLTuner 下载地址:http://github.com/rackerhacker/MySQLTuner-perlMySQLTun
- 在实际的工作和学习中,许多人的SQL Server 2005数据库日志文件可能会发生损坏,例如硬件故障、计算机非正常重启或关机等等。在SQL
- Pydicom单张影像的读取使用 pydicom.dcmread() 函数进行单张影像的读取,返回一个pydicom.dataset.Fil
- 这是一个很长的故事,嫌长的直接看最后的结论事情经过上周接了个需求,写了个小工具给客户,他要求打包成exe文件,这当然不是什么难事。因为除了写
- 目录前言1、字符串模板的参数2、格式控制符3、格式化操作符辅助符总结前言Python的%操作符可用于格式化字符串,控制字符串的呈现格式。使用