ASP.NET连接数据库并获取数据
关键词:连接对象的用法SqlConnection,SqlCommand,SqlDataAdapter *数据访问方式的写法
工具/原料
VS
SQL SERVER 2012 R2
方法/步骤1:
1.获取数据 :
//引用这两个命名空间
using System.Data.SqlClient;
using System.Data;
// 初始化连接对象
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "User ID=sa;Initial Catalog=DataBaseName;Data Source= (local);Password=111111";
// 打开连接
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
// 初始化命令
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "sql语句";
// 用于执行数据插入、更新和删除的操作;返回被影响的行数。
int i = cmd.ExecuteNonQuery();
if(i>0){MessageBox.Show("操作成功");}
// 用于查询最大值等只需返回一条数据情况下的操作;返回的是首行第一列的数据。
object obj = cmd.ExecuteScalar();
// 如果想获取数据集合的话我们经常使用到的是数据适配器
DataTable dt = new DataTable();
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = cmd;
adapter.Fill(dt);
2.把数据绑定到数据控件
string str = "Data Source=.;Initial Catalog=GridView;User ID=sa;Password=111111";
string sql = "select * from UserName";
SqlConnection conn = new SqlConnection(str);
//conn.Open(); 使用 SqlDataAdapter(数据适配器)不用写
//SqlCommand comm = new SqlCommand(sql, conn);
//SqlDataAdapter dr = new SqlDataAdapter(comm);
SqlDataAdapter dr = new SqlDataAdapter(sql,conn);//上面两句可以合并成这一行
DataSet ds = new DataSet();//创建数据集;
dr.Fill(ds); //填充数据集
this.GridView1.DataSource = ds;
this.GridView1.DataBind();//讲数据源绑定到控件上,
//conn.Close(); 关闭数据库连接
if (conn.State==ConnectionState.Open) //判断数据库连接状态,是否连接
{
conn.Close();
}
3.使用SqlDataReader:
若要创建 SqlDataReader,必须调用 SqlCommand 对象的 ExecuteReader 方法,而不要直接使用构造函数。
string str = "Data Source=.;Initial Catalog=GridView;User ID=sa;Password=111111";
string sql = "select * from UserName";
SqlConnection conn = new SqlConnection(str);
conn.Open();
SqlCommand comm = new SqlCommand(sql, conn);
DataSet ds = new DataSet();
SqlDataReader dr = comm.ExecuteReader();
if (dr.Read())
{
//下面两种都可以获得数据
//this.TextBox1.Text = dr.GetString(1);
//this.TextBox2.Text = dr.GetInt32(3).ToString();
this.TextBox1.Text = dr.GetString(dr.GetOrdinal("Name"));
this.TextBox2.Text = dr.GetInt32(dr.GetOrdinal("Age")).ToString();
}
//循环输出
while (dr.Read())
{
Response.Write(dr["Name"]);
Response.Write(dr["Age"]);
Response.Write("<br/>");
}
dr.Close();
if (conn.State == ConnectionState.Open)
{
conn.Close();
}
SqlDataReader:提供一种从 SQL Server 数据库读取行的只进流的方式
方法/步骤2
在VS中的web.config文件里面设置:
<connectionStrings>
<add name="SQLCONNECTIONSTRING" connectionString="Data Source=PC-200909160824; Initial Catalog=Shopping; Integrated Security=True"></add>
</connectionStrings>
Data Source是连接的数据源,Initial Catalog是你要连接的数据库名,Integrated Security说明你连接数据库的方式为Windows身份验证。
或者
<add name="Frame_ConnectionString" connectionString="Database=数据库名;Server=服务器;User ID=用户名;Password=密码;" providerName="System.Data.SqlClient" />
版权声明:本文为博主原创文章,未经博主允许不得转载。
ASP.NET连接数据库并获取数据的更多相关文章
- ASP.NET中动态获取数据使用Highcharts图表控件【Copy By Internet】
具体实现的效果如图:
- ASP.NET 前端Ajax获取数据并刷新
控制器中↓ /// <summary> /// 根据ID来进行展示数据 /// </summary> /// <param name="instru_id&qu ...
- 如何用asp.net MVC框架、highChart库从sql server数据库获取数据动态生成柱状图
如何用asp.net MVC框架.highChart库从sql server数据库获取数据动态生成柱状图?效果大概是这样的,如图: 请问大侠这个这么实现呢?
- ECharts 从后台动态获取数据 (asp.net)
(一) 使用工具 visual studio 2017:Web开发:asp.net (代码中的js引用路径以及ajax方法调用的url,记得修改哦) (二) 准备工作(此处写给和我一样小白) 1.动态 ...
- ASP.NET Web API实践系列07,获取数据, 使用Ninject实现依赖倒置,使用Knockout实现页面元素和视图模型的双向绑定
本篇接着上一篇"ASP.NET Web API实践系列06, 在ASP.NET MVC 4 基础上增加使用ASP.NET WEB API",尝试获取数据. 在Models文件夹下创 ...
- 在ASP.NET Core中用HttpClient(一)——获取数据和内容
在本文中,我们将学习如何在ASP.NET Core中集成和使用HttpClient.在学习不同HttpClient功能的同时使用Web API的资源.如何从Web API获取数据,以及如何直接使用Ht ...
- Asp.Net使用代理IP远程获取数据
/// <summary> /// 远程获取数据 /// </summary> /// <param name="url">url</pa ...
- asp.net mvc Areas 母版页动态获取数据进行渲染
经常需要将一些通用的页面元素抽离出来制作成母版页,但是这里的元素一般都是些基本元素,即不需要 进行后台数据交换的基本数据,但是对于一些需要通过后台查询的数据,我们应该怎么传递给前台的母版页呢 这里描述 ...
- cache应用(asp.net 2.0 SQL数据缓存依赖 [SqlCacheDependency ] )
Asp.net 2.0 提供了一个新的数据缓存功能,就是利用sql server2005 的异步通知功能来实现缓存 1.首先在sqlserver2005 中创建一个test的数据库. 在SQL Ser ...
随机推荐
- SequoiaDB 1.5 版本发布
SequoiaDB 1.5 – 2013.11.13 新特性 1. 新增聚合特性,API实现 GROUPBY, MAX 等功能: 2. 全新改版的Web管理界面: 3. 提供C#语言 ...
- vim配置python开发环境
vim配置python开发环境 一.安装vim sudo apt-get install vim 二.vim基础配置 #Centos6.5 /usr/share/vim/vim72 vi /etc/v ...
- ipc telnet 攻击
ping %1 -n 2net use \\%1sc \\%1 config tlntsvr start= autosc \\%1 start tlntsvrtelnet %1
- TClientDataSet中关于TField、TFieldDef动态创立字段的应用
//使用 TFieldDef 建表: begin with ClientDataSet1.FieldDefs do begin Add('Name' , ftString, 12, True); { ...
- Oracle 表的访问方式(1) ---全表扫描、通过ROWID访问表
1.Oracle访问表的方式 全表扫描.通过ROWID访问表.索引扫描 2.全表扫描(Full Table Scans, FTS) 为实现全表扫描,Oracle顺序地访问表中每条记录,并检查每一条记录 ...
- jquery-easyui中datagrid扩展,隐藏显示表头功能
今天,后台中需要新增一个功能,用户可以自由选择显示的列,之后保存到本地localStroage中.所以扩展了easyui中datagrid的onHeaderContextMenu方法. 使用方法: _ ...
- Wpf从资源中重用UI元素
在我的界面上有几个选项卡,每个选项卡中都有下面的元素: <StackPanel Orientation="Horizontal"> <Button Content ...
- hornetq 入门(1)
Hornetq 版本2.4.0final 需要JDK7及以上 Hornetq官网 Hornetq2.1中文手册 step1.启动服务端 1.1准备配置文件(配置说明参考官网手册) hornetq-c ...
- Underscore 源码
Underscore 源码 作者:韩子迟 What? 不知不觉间,「Underscore 源码解读系列」进入了真正的尾声,也请允许我最后一次 po 下项目的原始地址 https://github.co ...
- 给同一个表中的两个外键写sql
一个表有两个外键都指向另一个表的主键时,如何检索他们的数据? 例如,表TableA有两个列,puserID和friendID. 表TableB有两个列,userID和userName. 我们怎样检索数 ...