[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与数据库连结

原文地址:https://www.cnblogs.com/chinatrump/p/11505138.html

时间: 2024-08-01 12:39:11

[C#]ASP.NET与数据库连结的相关文章

asp开发出现数据库引擎错误: '80040e14'

几分钟写完一个程序,在浏览器上进行测试的时候却总是出现Microsoft JET Database Engine  '80040e14'.网上搜了许多资料,自己又定位程序出错的位置进行异常仔细的检查,可是仍然没有任何进展..真真是分分钟都有想要放弃重新开始写得冲动.. 网上给出的解决方案大致就是修改数据库访问权限,还有就是程序语法错误(大多数都是这种情况),还有一些原因,不过我敢确定我不是在这些方面出现了问题,于是便不做任何计较.根据我个人的情况,报错的位置大概就是open数据库的时候,不过我敢

asp.net实现数据库读写分离(SQLSERVER2005,ORACLE)【转】

很多时间我们肯定希望数据库的读写与程序是分离,这样可以提高业务量同时提高服务器性能,下面我来以SQL Server 2005为实例来介绍数据库读写分离方法,大家可参考. 下面我们重点介绍Sql Server 2005是如何实现负载均衡的. Sql Server 2005的新特性 SQL Server 2005对端到端(P2P)拓扑结构上事务性的复制加强了支持.P2P的拓扑结构支持无限的发布服务器,它们彼此之间可以互相交换事务. P2P拓扑是SQL Server的一个巨大进步.现在,多端点服务器可

ASP.NET(C#) 数据库操作类 SqlServerDataBase

1 using System.Web.Security; 2 using System.Web.UI; 3 using System.Web.UI.WebControls; 4 using System.Web.UI.WebControls.WebParts; 5 using System.Web.UI.HtmlControls; 6 using System.Data.SqlClient; 7 8 namespace Mysqlserver 9 { 10 /// <summary> 11 /

ASP 连接 MySQL 数据库两种方法

一般都是用myodbc来连接.首先,在系统中安装 Mysql 的ODBC数据库驱动.如安装稳定版本是3.51.下载地址是:http://dev.mysql.com/downloads/connector/odbc/3.51.html. 下载安装好后.在控制面板-->管理工具-->数据源 (ODBC)中的“驱动程序”页中如果有MySQL ODBC 3.51 Driver就说明驱动已经安装成功,就可以开始写程序了. 下面是我测试时使用的程序,里面有说明就不再介绍了. 方法一: <% '设置M

asp.net实现数据库备份还原功能

-- 备份数据库 backup database db_CSManage to disk='c:\backup.bak' -- 还原数据库,必须先备份该数据库的日志文件到原先的备份文件中 backup log db_CSManage to disk='c:\backup.bak' restore database db_CSManage from disk='c:\backup.bak' 其中db_CSManage是数据库名称,disk后的路径即是备份文件存储的路径. 知道了SQL语句,那么在.

ASP.NET Core 数据库上下文 - ASP.NET Core 基础教程 - 简单教程,简单编程

原文:ASP.NET Core 数据库上下文 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 数据库上下文 上一章节中我们了解了 Entity Framework 并讲述了如何配置它.本章节我们就来学习如何使用它 EF 框架 ( Entity Framework ) 使我们能够使用称为实体 ( Entity) 的公共语言运行时 ( CLR ) 对象查询,插入,更新和删除数据 EF 框架将模型中定义的实体和关系映射到数据库.除此之外,它还具有以下能力: 将

ASP.NET (C#) 数据库-02_DataSource-03_SqlDataSource_OLEDB-06_FormView_ModifyData_OnAspx

摘要:ASP.NET (C#) 数据库-02_DataSource-03_SqlDataSource_OLEDB-06_FormViewModifyData_OnAspx 一.SqlDataSource 控件设定与 FormView 控件显示与异动数据范例.(在?aspx 里设置) @在 aspx 页面设置如下 ?? 未命名页面 ??? ??????? 一.SqlDataSource 控件设定与 FormView 控件显示与异动数据范例. ?????? (在 Aspx 页面上设置) ??????

ASP.NET (C#) 数据库-01_ADO_NET-04_DataSet-07_TableMappings

摘要:ASP.NET (C#) 数据库-01_ADO_NET-04_DataSet-07_TableMappings 一.数据库 TableMappings 对象(自订内存内字段名称) 显示数据操作范例: using System.Configuration; using System.Data; using System.Data.OleDb; using System.Data.SqlClient; partial class _01_ADO_NET_04_DataSet_07_TableM

ASP.NET MVC 数据库依赖缓存的实现

当数据库中的信息发生变化的时候,应用程序能够获取变化的通知是缓存依赖得以实现的基础.应用程序可以通过轮询获取数据变化的信息,使用轮询的话也不可能重新查一次后再和以前的数据做比较,如果这样的话如果我一个表里面有1000行数据我要是读100次的话是不是得比较1000 x 100 次,显然这种方法是不可行的,那怎么办呢?大家都学过触发器吧,实现数据库依赖缓存的轮询机制就是通过触发器来实现的. 实现步骤简单分析:     首先创建一个用于记录监控信息的表,表的字段就两个一个是表名,一个是版本号.然后,对