[C#]ASP.NET与数据库连结

[C#]ASP.NET与数据库连结


通常在写网页时,都会需要与数据库连结,并且从中取出数据或查询比对等,

接下来是说明ASP.NET该如何与数据库进行连结。

首先,与数据库连结,就最先想到必须要跟网页说明与哪个数据库连结,

并且数据库使用者的账号、密码、位置等资讯必须说明,

通常在设定数据库连结时大多网站都会介绍如何从xxxxx.aspx.cs的网页中去连结,

但是由于自己在开发时常常遇到一件事情,就是数据库的使用者名称、密码会更改,

虽然说一般而言不太可能会去更改...但有时网页并非自己开发时,就会常发生,

而如果是在xxxxx.aspx.cs中建立数据库连结时,会因为必须连结的页面很多,

因此常常导致一改就要改很多页面的窘境,因此我建议在Web.config中建立数据库连结语法,

这样的好处是,如果需要修改使用者账号、密码,甚至数据库名称时只需要修改一次,

另外当有开发到较大的网站时,通常使用者权限会因页面权限的不同而有所不同,

而此种方法还可以在同一个地方管理所有连结语法。

接下来直接说明语法,而这边也一并说明当使用的是MySQL与MSSQL时的差别,

首先是Web.config的连结与法设定,

文件名称:Web.config


	
  
  
	
  
  

以上的name字段中分别有MSSQL_DBconnect及MySQL_DBconnect两个名称,

分别就是说明MSSQL及MySQL连结的语法,另外使用MySQL时必须自行导入MySQL的dll档

另外,语法中的127.0.0.1请修改为数据库位置(正常初学者数据库及开发环境相同),

DB_Username、DB_Password、DB_Name请依照自己的设定做更正。

接下来,就是说明该如何在xxxxx.aspx.cs套用Web.config的连结与法了。

在想要连结数据库的地方设定增加语法,


using System.Data.SqlClient;
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["MSSQL_DBconnect"].ConnectionString);
//MySQL连结:
using MySql.Data.MySqlClient;
MySqlConnection conn = new MySqlConnection(ConfigurationManager.ConnectionStrings["MySQL_DBconnect"].ConnectionString);

其中的MySQL_DBconnect与MSSQL_DBconnect就是对应到Web.config中所新增的名称了。

这样就可以将ASP.NET连结至数据库了。

接下来,以一个简单的例子来读取数据库中的一笔数据,


SqlDataReader reader;	//声明一个DataReader
SqlConnection connStr = new SqlConnection(ConfigurationManager.ConnectionStrings["MSSQL_connect"].ConnectionString);
String select = "select * from USER where Name = God";	//声明SQL语法的字符串,这边可依照自行需求修改
connStr.Open();	//开启数据库的连结
SqlCommand cmd = new SqlCommand(select, connStr);	//声明SqlCommand并将SQL语法及连结语法带入
reader = cmd.ExecuteReader();	//使用SqlCommand的ExecuteReader()方法,
				//ExecuteReader()为查询时使用,如要删除、修改、新增,须改为ExecuteNonQuery()方法
while (reader.Read())	//使用无限循环将SQL语法查询的结果每笔查阅一次
{
	String NameStr = (String)reader["Name"];//将数据库中Name字段存放于NameStr字符串中
	int IDint = (int)reader["ID"];		//将数据库中ID字段存放于IDint整数中,不同型态请自行更改
					//这边建议字段与字符串相同,方便管理,怕人搞混所以这边用不同名称
}
connStr.Close();	//关闭数据库的连结


//MySQL语法:说明与上面MSSQL说明相同,但通常Sql的字眼会变成MySql
MySqlDataReader reader;
MySqlConnection connStr = new MySqlConnection(ConfigurationManager.ConnectionStrings["MySQL_connect"].ConnectionString);
String select = "select * from USER where Name = God";
connStr.Open();
MySqlCommand cmd = new MySqlCommand(select, connStr);
reader = cmd.ExecuteReader();
while (reader.Read())
{
	String Name = (String)reader["Name"];
	int IDint = (int)reader["ID"];
}
connStr.Close();

上面例子中我将字符串及整数声明在循环内,所以只有循环内可使用该字符串及整数,

所以有不同需求的请自行更改。

由于例子中SQL语法已针对特定Name筛选,如果有不同的需求,建议可以在循环内用if判断筛选

※以上如有错字或错误请告知,谢谢。

原文:大专栏  [C#]ASP.NET与数据库连结


猜你喜欢

转载自www.cnblogs.com/chinatrump/p/11505138.html