数据库学习任务二:数据库连接对象SqlConnection
数据库应用程序的开发流程一般主要分为以下几个步骤:
- 创建数据库
- 使用Connection对象连接数据库
- 使用Command对象对数据源执行SQL命令并返回数据
- 使用DataReader和DataSet对象读取和处理数据源的数据
前面已经学习了如何创建数据库,现在了解一下关于Connection对象的一些内容。
Connection对象是连接程序和数据库的“桥梁”,要存取数据源中的数据,首先要建立程序和数据源之间的连接。
而SqlConnection对象是连接SQL Server类型数据源的主要方式,通过相关属性和方法,实现对连接参数的设置、读取以及相关连接操作。
创建SqlConnection对象
SqlConnection是对象,就像C#中其它的对象一样。很多时候,你只需要声明并实例化SqlConnection,如下所示:
方式一:参数化字符串
SqlConnection con = new SqlConnection( "Data Source=(local);Initial Catalog=Northwind;Integrated Security=SSPI");
方式二:设置连接字符串属性
SqlConnection con = new SqlConnection();
con.ConnectionString= @“Data Source=(local);Initial Catalog=Northwind;Integrated Security=SSPI”;
上面第一个实例化SqlConnection对象使用了带一个string类型参数的构造函数。这个参数叫做连接字符串(connection string)。表1描述了连接字符串的通常部分。
表1.ADO.NET连接字符串包括某些键/值对来指示如何连接数据库。它们包括位置、数据库的名字、和安全认证。

当你在一个独立的机器上面做开发的时候,集成安全是安全的。然而,你通常希望指明所使用的应用程序的基于SQL Server用户ID的安全许可。下面显示的连接字符串使用了User ID和Password参数:
SqlConnection con = new SqlConnection();
con.ConnectionString= @“Data Source=DatabaseServer;Initial Catalog=Northwind;User ID=YourUserID;Password=YourPassword"”;
注:Data Source被设置为DatabaseServer来指示你能够指明位于不同机器――跨局域网或者Internet――的数据库。另外,User ID和Password替换调了集成安全参数。
【例】:使用SqlConnection对象连接SQL Server数据库
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient; public partial class Register : System.Web.UI.Page
{ protected void Page_Load(object sender, EventArgs e)
{ }
protected void btnCon_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection();
con.ConnectionString = @"Data Source=.\SQLEXPRESS;database=ShopBookDB;Integrated Security=SSPI;User Instance=True";
con.Open();
try
{
Response.Write("<script>alert('连接数据库成功!')</script>");
con.Close();
}
catch (Exception)
{
Response.Write("<script>alert('连接数据库失败!')</script>");
con.Close();
}
}
}
运行结果如下:

数据库学习任务二:数据库连接对象SqlConnection的更多相关文章
- 数据库学习之ADO.NET五大对象
1 [ADO.NET] ado.net 是一种数据访问技术,使得应用程序能够连接到数据存储,并以各种方式操作存储在里面的数据. 2 [ADO.NET五大常用对象] Connec ...
- 数据库学习任务四:数据读取器对象SqlDataReader、数据适配器对象SqlDataAdapter、数据集对象DataSet
数据库应用程序的开发流程一般主要分为以下几个步骤: 创建数据库 使用Connection对象连接数据库 使用Command对象对数据源执行SQL命令并返回数据 使用DataReader和DataSet ...
- MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(八)----JDBC入门及简单增删改数据库的操作
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- Java数据库学习之模糊查询(like )
Java数据库学习之模糊查询(like ): 第一种方式:直接在SQL语句中进行拼接,此时需要注意的是parm在SQL语句中需要用单引号拼接起来,注意前后单引号之间不能空格 String sql = ...
- Java操作数据库——手动实现数据库连接池
Java操作数据库——手动实现数据库连接池 摘要:本文主要学习了如何手动实现一个数据库连接池,以及在这基础上的一些改进. 部分内容来自以下博客: https://blog.csdn.net/soonf ...
- 关于SQL SERVER数据库学习总结
对于SQL SERFVER数据库也学了有一阵子了,自己也对自己所学做了一些总结. 我们首先学习数据库设计的一些知识点和用SQL语句建库. 设计数据库步骤:需求分析阶段,概要设计阶段,详细设计阶段, 建 ...
- MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
随机推荐
- Java中Scanner的输入流的关闭问题
为什么Scanner in语句只能关闭一次,且对于其他任何Scanner输入流也关闭? 代码如图 import java.util.Scanner; public class ScannerTest ...
- NYOJ--187--快速查找素数(筛选法,素数打表)
快速查找素数 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 现在给你一个正整数N,要你快速的找出在2.....N这些数里面所有的素数. 输入 给出一个正整数数N ...
- promise处理多个相互依赖的异步请求
在项目中,经常会遇到多个相互依赖的异步请求.如有a,b,c三个ajax请求,b需要依赖a返回的数据,c又需要a和b请求返回的数据.如果采用请求嵌套请求的方式自然是不可取的.导致代码难以维护,如何请求很 ...
- Thinkphp5 用ab压力测试工具测试高并发请求
上篇文章[Thinkphp5实现悲观锁]已介绍过thinkphp5使用悲观锁实现高并发的场景,这篇文章将实际测试下. 在shell里进入到apache的bin目录,输入以下url: ab -n 100 ...
- 【转载】跟我一起学习VIM - vim插件
目录 写在前面:Life Changing Editor 什么是VIM 为什么选VIM 为什么选其它 为什么犹豫选择它们 VIM >= SUM(现代编辑器) 如何学习VIM 一秒钟变记事本 VI ...
- 一步一步学多线程-ThreadLocal源码解析
上网查看了很多篇ThreadLocal的原理的博客,上来都是文字一大堆,费劲看了半天,大脑中也没有一个模型,想着要是能够有一张图明确表示出来ThreadLocal的设计该多好,所以就自己看了源码,画了 ...
- python学习之while 和for循环
while 和for循环 一般格式while <test>: <statment>;else: <statment>; else 部分为可选部分,(控制权离开wih ...
- Slave_SQL_Runing:NO 复制出现问题的解决办法
--Slave_SQL_Runing:NO 复制出现问题的解决办法 -------------------------------------------------------2014/05/21 ...
- 多人开发的git项目如何保持提交日志为一条直线?
多人开发的git项目如何保持提交日志为一条直线? 一.Git的项目的git常用操作 a)Git clone 项目地址 从远程仓库克隆项目到本地 b)Git pull 从当前分支拉取更新代码 c)Git ...
- ECC椭圆曲线详解(有具体实例)
前言 ECC英文全称"Ellipse Curve Cryptography" 与传统的基于大质数因子分解困难性的加密方法不同,ECC通过椭圆曲线方程式的性质产生密钥 ECC164位 ...