关于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技术专栏
标题【萤光云双十二 全场6折 15元/月 续费同价】今天站长给大家推荐一家国内云厂商的双十二活动。萤光云总部位于福建福州,其成立于2002 年。主打高防云服务器产品,主要提供福州、北京、上海 BGP 和香港 CN2 节点。萤光云的高防云服务器自带 50G 防御,适合高防建站、游戏高防等业务。这家厂商本次双十二算是性价比很高了。全线产品6折,上海 BGP 云服务器折扣更大 5.5 折(测试了一下是金...
RFCHOST,这个服务商我们可能有一些朋友知道的。不要看官网是英文就以为是老外服务商,实际上这个服务商公司在上海。我们实际上看到的很多商家,有的是繁体,有的是英文,实际上很多都是我们国人朋友做的,有的甚至还做好几个品牌域名,实际上都是一个公司。对于RFCHOST商家还是第一次分享他们家的信息,公司成立大约2015年左右。目前RFCHOST洛杉矶机房VPS正进行优惠促销,采用CN2优化线路,电信双...
Vinahost,这个主机商还是第一次介绍到,翻看商家的介绍信息,是一家成立于2008年的老牌越南主机商,业务涵盖网站设计、域名、SSL证书、电子邮箱、虚拟主机、越南VPS、云计算、越南服务器出租以及设备托管等,机房主要在越南胡志明市的Viettle和VNPT数据中心,其中VNPT数据中心对于国内是三网直连,速度优。类似很多海外主机商一样,希望拓展自己的业务,必须要降价优惠或者增加机房迎合需求用户...