学习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();
}
}
相关阅读:
0
投稿
猜你喜欢
- 在Oracle 8i中,往往会出现要在存储过程中运行操作系统命令的情况。一般来说,利用Oracle Enterprise Manager设定
- 在域环境下我没配置成果,也许是域用户的原因,因为我在生产环境下搞的,更改域用户需要重启SQLServer ,所以这个方法放弃了,只能用证书形
- 你一定很熟悉Youtube了,知道它是一个视频分享网站。是的,youtube目前十分流行,你也许会常常访问。这里有一些关于youtube u
- 可以,具体方法如下::<% set fs=createobject("scripting.
- 任何熟悉SQL和关系数据库的人都遇见过大量的连接类型。最简单的说,连接(join)会把两个表的内容组合到一个虚拟表或者recordset内。
- 最近,我不得不对我的一个客户的旧网站进行更新,使得它能够达到可访问性的标准。对三四年前的旧代码进行挖掘的想法根本没有吸引力,主要是因为我曾经
- 由于特定需求,最近实验室需要远程连接外地的sql server 2000服务器,最开始怎么连也连不上,出现了很多问题,但是在今天上午,借用实
- 一、INSERT和REPLACEINSERT和REPLACE语句的功能都是向表中插入新的数据。这两条语句的语法类似。它们的主要区别是如何处理
- 实现了宽度、高度、透明度的渐变,还能以高度宽度中点为中心,还扩展成以任意点为中心渐变(实例中以点击点为中心)。<!DOCTYPE ht
- 下面演示了,当asp程序发生错误时,屏蔽系统默认的错误显示,而显示自定义的错误信息。<%@ LANGUAGE="V
- 编者注:当讲到了性能优化和案例方面的东西,就要想到如何从开发人员的角度进行了理解,认识SQL是如何执行,以及如何学习高级的SQL,这篇文章对
- 在改进SQL Server 7.0系列所实现的安全机制的过程中,Microsoft建立了一种既灵活又强大的安全管理机制,它能够对用户访问SQ
- 如何显示数据库中的图片和超级链接?代码见下:<% set conn=server.creatobject(&quo
- IE8主页http://www.microsoft.com/windows/products/winfamily/ie/ie8/defaul
- 这是内部的一个邮件记录,分享出来听下业内同行的声音。事情是这样的..==先是 A 推荐了白鸦的推到内部群:“设计师们一定要养成一个习惯:无论
- 现在公布方法:替换editor.js 函数 // Toolbar button onmouseup
- 今天我升级MYSQL到5.1的时候遇到的。写出来共享以下。1、[root@localhost mysql]# scripts/mysql_i
- 【原文地址】New C# "Orcas" Language Features: Automatic Properties
- 大家一定使用过 phpmyadmin 里面的数据库导入,导出功能,非常方便。但是在实际应用中,我发现如下几个问题:1、数据库超过一定尺寸,比
- 一段重用很高的ajax代码,可以套用 <!DOCTYPE HTML