关于Namespace 命名空间的使用我常用
复制代码代码如下 &It;%@Import Namespace="System.Data"%>
这是在引用为我们提供的Namespace这和ASP不同的我们在ASP.net必须先引用与我们操作有关的Namespace后才能使用相应的功能。其实说白了一个 Namespace;就是一个组件。
这个是关于ASP.net的高级应用。
我下面简单的列举一些常用的 Namespace
代码如下
&It;%@Import Namespace="System.Data"%> 处理数据时用到
&It;%@Import Namespace="System.Data.ADO"%>使用ADO.net ;时用到
&It;%@Import Namespace="System.Data.SQL"%>SQL Server 数据库专用
&It;%@Import Namespace="System.Data.XML"%> 不用看处理XML用到
&It;%@Import Namespace="System. IO"%> 处理文件时用到
&It;%@Import Namespace="System.Web.Uti l"%> 发邮件时大家会用到
&It;%@Import Namespace="System.Text"%> 文本编码时用到
操作数据库需要的东东讲解了Namespace,我们可以正式来讨论数据库的应用了。
从上面的可以看出我们操作数据库我们需要引用下面两个 Namespace
代码如下
&It;%@Import Namespace="System.Data"%>
&It;%@Import Namespace="System.Data.SQL"%>
其实System.Data.SQL可以用System.Data.ADO来代替 SQL是SQL Server专用 ADO可以支持任何数据库只要在主机上存在相应的驱动就行了 如Access,MysqI ,OracIe之类的 。
无论是ADO还是SQL他们都有几个基本的对象用于操作代码如下
Connections连结到一个数据库以便于后面的应用类似ADO中的Connections Comma nds
执行SQL语句的地方
DataReader读取执行后返回的数据内容
DataSet储存数据功能强大我们会具体讲解
DataSetCommand执行SQL语句 并把数据存入DataSet
这里面可能最难理解的就是 DataSet 我们先不去管他。
Co nn ectio ns SQLC on ection或者ADOCo nn ectio n
它的主要任务就是建立一个与数据库服务器的连接代码如下
&It;%@Page Lan guage="C#"%>
&It;%@Import Namespace="System.Data"%>
&It;%@Import Namespace="System.Data.SQL"%>
&t;script Lan guage="C#"Run at="Server">pubI ic void Page_Load Object src,Eve ntArgs e
{stri ngstrProvider="server=localhost;uid=sa;pwd=;database=aspc n";
SQLC onnection MyConnection=new SQLC onn ecti on(strProvider);
}
</script>
上面我们建立了一个名为MyConnection的联结就好像我们在ASP中用ADODB.Co nn ecti on打开了一个联结这个联结我们在 Comma nd或者DataSetComma nd中将会使用。
它的一些有用的属性和方法有
代码如下
ConnectionString取得或设置连结数据库的语句
ConnectionTimeout取得或设置连结数据库的最长时间也是就超时时间
DataBase取得或设置在数据库服务器上要打开的数据库名
DataSource取得或设置DSN,大家不会陌生吧 )
Password取得或设置密码
UserID取得或设置登陆名
State取得目前联结的状态
Open()打开联结
Close()关闭联结Clone()克隆一个联结。
我们也通过一个小例子来看看他们的用法
代码如下
SQLC onnection myConnection=new SQLC onnection();myConnection.DataSource="mySQLServer";myConnection.Password="";myConnection.UserID="sa";myConnection.Connection Timeout=30;myConnection.Ope n();myConnection.Database="n orthwi nd";myConnection」 solati on Level=Isolati on Level .ReadCommitted
&n bsp;
Commands(SQLCommand或者ADOCommand)
上面的程序中我们打开了一个联结这里我们就需要来使用这个 看例子比较好
代码如下
&It;%@Page Lan guage="C#"%>
&It;%@Import Namespace="System.Data"%>
&It;%@Import Namespace="System.Data.SQL"%>
&t;script Lan guage="C#"Ru nat="Server">publ ic void Page_Load(Object src,Eve ntArgs e)
{stri ngstrProvider="server=localhost;uid=sa;pwd=;database=aspc n";stri ng strI ndex="select * from aspc n where purview='webmaster'";
SQLC onn ectio n MyConnection=new SQLC onn ectio n(strProvider);
SQLComma nd MyComma nd=new SQLComma nd(strl ndex,MyC onn ectio n);
MyConnection.Open(); //打开联结
MyCommand.ExecuteNonQuery(); //执行SQL,但不返回任何记录
MyCo nn ectio n.Close();
}
</script>
在上面的例子中我们建立SQLCommand对象时引用了两个参数(strIndex,MyConnection),从源程序中我们也可以看出来strIndex代表的是执行的SQL语句 MyConnection是我们先前建立的联结.然后我们就要先打开MyConnnection,然后再执行这个SQL语句。
我们在这里执行用的是 ExecuteNonQuery()方法这样不返回记录集只是返回受影响的记录个数。
这里我们打开和关闭数据库也可以这样做。
代码如下stri ngstrProvider="server=localhost;uid=sa;pwd=;database=aspc n";stri ng strI ndex="select * from aspc n where purview='webmaster'";
SQLC onn ectio n MyConnection=new SQLC onn ectio n(strProvider);
SQLComma nd MyComma nd=new SQLComma nd(strl ndex,MyC onn ectio n);
MyComma nd.ActiveC onnection.Ope n();
MyComma nd.ExecuteN on Query();
MyComma nd.ActiveC onnection.Close();
所得结果和先前的一样。所以执行一条SQL语句有很多种方法。而且还不只两种我们后面学了DataSetCommand,那打开方法就是N种了 )这就需要看你的习惯和程序的要求了 )
我们先来看看Comma nd常用的方法和属性
代码如下
ActiveCo nn ectio n取得或设置联结Co nn ectio ns
CommandText执行的SQL语句或储存过程(StoredProcedure)名
CommandTimeout执行的最长时间
Comma ndType Comma nd操作的类型(StoredProcedure,Text,TableDirect)三种 默认Text
Parameters操作储存过程时使用
Execute()执行SQL语句或储存过程
ExecuteNonQ uery()同上区别在于不返回记录集
Clo ne()克隆Comma nd
同样看一个例子
代码如下stri ng mySelectQuery="SELECT*FROM Categories ORDER BY CategorylD";stri ngmyC onn ectStri ng="userid=sa;password=;database=n orthwi nd;server=mySQLServer";
SQLComma nd myComma nd=new SQLComma nd(mySelectQuery);myComma nd.ActiveC onnection=new SQLC onn ectio n(myC onn ectStri ng);myComma nd.Comma ndTimeout= 15;myComma nd.Comma ndType=Comma ndType.Text;
更多信息请查看IT技术专栏
racknerd怎么样?racknerd今天发布了几款美国特价独立服务器的促销,本次商家主推高配置的服务器,各个配置给的都比较高,有Intel和AMD两种,硬盘也有NVMe和SSD等多咱组合可以选择,机房目前有夏洛特、洛杉矶、犹他州可以选择,性价比很高,有需要独服的朋友可以看看。点击进入:racknerd官方网站RackNerd暑假独服促销:CPU:双E5-2680v3 (24核心,48线程)内存...
华为云怎么样?华为云用在线的方式将华为30多年在ICT基础设施领域的技术积累和产品解决方案开放给客户,致力于提供稳定可靠、安全可信、可持续创新的云服务,做智能世界的“黑土地”,推进实现“用得起、用得好、用得放心”的普惠AI。华为云作为底座,为华为全栈全场景AI战略提供强大的算力平台和更易用的开发平台。本次年终聚惠618活动相当给力,1核2G内存1m云耀云服务器仅88元/年起,送主机安全基础版套餐,...
tmhhost放出了2021年的端午佳节+618年中大促的优惠活动:日本软银、洛杉矶200G高防cn2 gia、洛杉矶三网cn2 gia、香港200M直连BGP、韩国cn2,全都是高端优化线路,所有这些VPS直接8折,部分已经做了季付8折然后再在此基础上继续8折(也就是6.4折)。 官方网站:https://www.tmhhost.com 香港BGP线路VPS ,200M带宽 200M带...