|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
Windows本身的所有问题都会一成不变的也累加到了它的身上。安全性、稳定性、跨平台性都会因为与NT的捆绑而显现出来;关于Namespace(定名空间)的利用在后面的程序中我们看到,我经常使用<%@ImportNamespace="System.Data"%>,这是在援用M$为我们供应的Namespace,这和ASP分歧的,我们在ASP.net必需先援用与我们操纵有关的Namespace后才干利用响应的功效。实在说白了,一个Namespace;就是一个组件。这个是关于ASP.net的初级使用,我会在前面的章节讲。(不外要写到那边,工夫......)
我上面复杂的枚举一些经常使用的Namespace
<%@ImportNamespace="System.Data"%>处置数据时用到
<%@ImportNamespace="System.Data.ADO"%>利用ADO.net;时用到
<%@ImportNamespace="System.Data.SQL"%>SQLServer数据库公用
<%@ImportNamespace="System.Data.XML"%>不必看处置XML用到
<%@ImportNamespace="System.IO"%>处置文件时用到
<%@ImportNamespace="System.Web.Util"%>发邮件时人人会用到
<%@ImportNamespace="System.Text"%>文本编码时用到
操纵数据库必要的东东
解说了Namespace,我们能够正式来会商数据库的使用了。从下面的能够看出,我们操纵数据库,我们必要援用上面两个Namespace
<%@ImportNamespace="System.Data"%>
<%@ImportNamespace="System.Data.SQL"%>
实在System.Data.SQL能够用System.Data.ADO来取代,SQL是SQLServer公用,ADO能够撑持任何数据库(只需在主机上存在响应的驱动就好了,如Access,Mysql,Oracle之类的),这里因为飞刀的数据库是SQLServer,原本能够用ADO,可是想一想M$独自把SQL自力出来,为什么不必呢。至于它能带来几优点,飞刀没有测试过,对SQLServer一定要比ADO好一点啦。
不管是ADO仍是SQL,他们都有几个基础的工具用于操纵
Connections保持到一个数据库,以便于前面的使用(相似ADO中的Connections)
Commands实行SQL语句的中央
DataReader读取实行后前往的数据内容
DataSet贮存数据,功效壮大,我们会详细解说
DataSetCommand实行SQL语句,并把数据存进DataSet
这内里大概最难了解的就是DataSet,我们先不往管他,先拿软的开刀
Connections(SQLConection大概ADOConnection)
它的次要义务就是创建一个与数据库服务器的联合
<%@PageLanguage="C#"%>
<%@ImportNamespace="System.Data"%>
<%@ImportNamespace="System.Data.SQL"%>
<ScriptLanguage="C#"Runat="Server">
publicvoidPage_Load(Objectsrc,EventArgse)
{
stringstrProvider="server=localhost;uid=sa;pwd=;database=aspcn";
SQLConnectionMyConnection=newSQLConnection(strProvider);
}
</script>
下面我们创建了一个名为MyConnection的联合,就仿佛我们在ASP顶用ADODB.Connection翻开了一个联合.这个联合我们在Command大概DataSetCommand中将会利用.
它的一些有效的属性和办法有
ConnectionString获得或设置保持数据库的语句ConnectionTimeout获得或设置保持数据库的最长工夫,也是就超不时间DataBase获得或设置在数据库服务器上要翻开的数据库名DataSource获得或设置DSN,人人不会生疏吧:)Password获得或设置暗码UserID获得或设置上岸名State获得今朝联合的形态Open()翻开联合Close()封闭联合Clone()克隆一个联合。(呵呵,绵羊能够Connection我也能够)
我们也经由过程一个小例子来看看他们的用法:
SQLConnectionmyConnection=newSQLConnection();
myConnection.DataSource="mySQLServer";
myConnection.Password="";
myConnection.UserID="sa";
myConnection.ConnectionTimeout=30;
myConnection.Open();
myConnection.Database="northwind";
myConnection.IsolationLevel=IsolationLevel.ReadCommitted
Commands(SQLCommand大概ADOCommand)
下面的程序中我们翻开了一个联合,这里我们就必要来利用这个,看例子对照好:
<%@PageLanguage="C#"%>
<%@ImportNamespace="System.Data"%>
<%@ImportNamespace="System.Data.SQL"%>
<ScriptLanguage="C#"Runat="Server">
publicvoidPage_Load(Objectsrc,EventArgse)
{
stringstrProvider="server=localhost;uid=sa;pwd=;database=aspcn";
stringstrIndex="select*fromaspcnwherepurview=webmaster";
SQLConnectionMyConnection=newSQLConnection(strProvider);
SQLCommandMyCommand=newSQLCommand(strIndex,MyConnection);
MyConnection.Open();file://打开联合
MyCommand.ExecuteNonQuery();file://执行SQL,但不前往任何纪录
MyConnection.Close();
}
</script>
在下面的例子中我们创建SQLCommand工具时援用了两个参数(strIndex,MyConnection),从源程序中我们也能够看出来strIndex代表的是实行的SQL语句,MyConnection是我们先前创建的联合.然后我们就要先翻开MyConnnection,然后再实行这个SQL语句。我们在这里实行用的是ExecuteNonQuery()办法,如许不前往纪录集,只是前往受影响的纪录个数。
这里我们翻开和封闭数据库也能够如许做。
stringstrProvider="server=localhost;uid=sa;pwd=;database=aspcn";
stringstrIndex="select*fromaspcnwherepurview=webmaster";
SQLConnectionMyConnection=newSQLConnection(strProvider);
SQLCommandMyCommand=newSQLCommand(strIndex,MyConnection);
MyCommand.ActiveConnection.Open();
MyCommand.ExecuteNonQuery();
MyCommand.ActiveConnection.Close();
所得了局和先前的一样。以是实行一条SQL语句有良多种办法。并且还不但两种,我们前面学了DataSetCommand,那翻开办法就是N种了:)这就必要看你的习气和程序的请求了;)
我们先来看看Command经常使用的办法和属性
ActiveConnection获得或设置联合ConnectionsCommandText实行的SQL语句或贮存历程(StoredProcedure)名CommandTimeout实行的最长工夫CommandTypeCommand操纵的范例(StoredProcedure,Text,TableDirect)三种,默许TextParameters操纵贮存历程时利用Execute()实行SQL语句或贮存历程ExecuteNonQuery()同上,区分在于不前往纪录集Clone()克隆Command
一样看一个例子:
stringmySelectQuery="SELECT*FROMCategoriesORDERBYCategoryID";
stringmyConnectString="userid=sa;password=;database=northwind;server=mySQLServer";
SQLCommandmyCommand=newSQLCommand(mySelectQuery);
myCommand.ActiveConnection=newSQLConnection(myConnectString);
myCommand.CommandTimeout=15;
myCommand.CommandType=CommandType.Text;</FONT>
我想详细了解ASP整站代码与PSP整站代码有什么优缺点,那个更好,更安全,更用容易维护,和管理。。。 |
|