C#与数据库访问技术总结(六)之Command对象创建SQl语句代码示例

Command对象创建SQl语句代码示例

  说明:前面介绍了 Command 对象的方法和一些属性,回顾一下 Command对象主要用来执行SQL语句。利用Command对象,可以查询数据和修改数据。

  在下面这段代码里,首先根据连接字符串创建一个SqlConnecdon连接对象,并用此对象连接数据源:然后创建一个SqlCommand对象,并用此对象的ExecuteNonQuery方法执行不带返回结果集的SQL语句。

  

 1 //连接字符串
 2
 3 private static string strConnect=" data source=localhost;database=LOGINDB;uid=sa;pwd=aspent;"
 6
 7 // 根据连接字符串创建SqlConnection 连接句柄
 8
 9 SqlConnetion objConnection =new SqlConnection(strConnect);
10
11 //数据库命令
12
13 SqlCommand objCommand =new SqlCommand( " ",objConnection);
14
15 // 设置sql语句
16
17 objCommand.CommandText= " INSERT INTO USERS " + " (USERNAME, NICKNAME, USERPASSWORD, USEREMAIL, USERROLE, CREATDATE, LASTMODIFYDATE) "+ " VALUES " +" (@USERNAME, @NICKNAME, @USERPASSWORD, @USEREMAIL, @USERROLE, @CREATDATE, @LASTMODIFYDATE ) ";
18
19 // 以下省略设置各值的语句
20
21 ……
22
23 try
24
25 {
26
27 //打开数据库连接
28
29 if( objConnection.State == ConnectionState. Closed )
30
31 {
32
33 objConnection.Open();
34
35 }
36
37 //获取运行结果,插入数据
38
39 objCommand.ExecuteNonQuery();
40
41 //省略后继动作
42
43 ……
44
45 }
46
47 catch(SqlException e)
48
49 {
50
51 Response.Write(e.Message.ToString());
52
53 }
54
55 finally
56
57 {
58
59 //关闭数据库连接
60
61 if(objConnection.State == ConnectionState.Open)
62
63 {
64
65 objConnection.Close();
66
67 }
68
69 }

  这段代码是连接数据库并执行操作的典型代码。

  其中,操作数据库的代码均在try… catch … finally结构中,因此代码不仅能正常地操作数据库,更能在发生异常的情况下抛出异常。

  另外,不论是否发生异常,也不论发生了哪种数据库操作的异常,finally块里的代码均会被执行,

  所以,一定能保证代码在访问数据库后关闭连接。

  而在下面的代码里,将使用Command对象执行查询类的SQL语句,并将结果集赋给DataRead对象。

private static string strConnect=" data source=localhost;uid=sa;pwd=aspent;database=LOGINDB"

SqlConnetion objConnection =new SqlConnection(strConnect);

SqlCommand objCommand =new SqlCommand( " ",objConnection);

// 设置sql语句

objCommand.CommandText= "SELECT * FROM USERS ";

try

{

//打开数据库连接

if( objConnection.State == ConnectionState. Closed )

objConnection.Open();

//获取运行结果

SqlDataReader result=objCommand.ExecuteReader();

//省略后继动作

……

}

catch(SqlException e)

{

Response.Write(e.Message.ToString());

}

finally

{

//关闭数据库连接

if(objConnection.State == ConnectionState.Open)

{

objConnection.Close();

}

}

  这里用到DataReader对象来获得结果集,如果仅仅想返回查询结果集的第一行第一列的值,可以将SqlDataReader result=objCommand.ExecuteReader();改成objCommand.ExecuteScalar().ToString();

时间: 2024-08-07 17:01:32

C#与数据库访问技术总结(六)之Command对象创建SQl语句代码示例的相关文章

C#与数据库访问技术总结(十四)之DataAdapter对象

DataAdapter对象 DataAdapter对象主要用来承接Connection和DataSet对象. DataSet对象只关心访问操作数据,而不关心自身包含的数据信息来自哪个Connection连接到的数据源, 而Connection对象只负责数据库连接而不关心结果集的表示. 所以,在ASP.NET的架构中使用DataAdapter对象来连接Connection和DataSet对象. 另外,DataAdapter对象能根据数据库里的表的字段结构,动态地塑造DataSet对象的数据结构.

ADO.NET数据库访问技术

ADO.net:数据库访问技术程序操作的数据都是变量或对象,这些东西都存在于内存中但是有很多的数据是存在数据库中的,数据库中的数据存在于硬盘上 作用:将数据库中的数据取到内存中来,可以让程序进行操作 将内存中的数据,写入到数据库中 1.using System.Data.SqlClient; //引用命名空间 2.建立 数据库连接类 string str = "server=.;database=Data0515;user=sa;pwd=123;";//连接字符串 SqlConnect

C#-数据库访问技术 ado.net——创建 数据库连接类 与 数据库操作方法 以及简单的数据的添加、删除、修改、查看

数据库访问技术 ado.net 将数据库中的数据,提取到内存中,展示给用户看还可以将内存中的数据写入数据库中去 并不是唯一的数据库访问技术,但是它是最底层的数据库访问技术 1.创建数据库,并设置主外键关系 2.创建新的C#项目,创建 数据库连接类 与 数据库操作方法 a.引用数据库 using System.Data.SqlClient;    b.创建数据库连接类:先进行编写连接字符串,在实例化连接类 c.创建数据库操作方法(此处不是实例化类)    d.打开数据库 → 执行操作 → 关闭数据

数据库访问技术之JDBC

在了解JDBC之前呢,我们可以先对ODBC做一个回顾,以便于更好的理解JDBC.看名字也知道这两个关系不一般,他们实现了同样的功能,为应用程序连接和操作数据库提供支持.所以,我们先从ODBC开始. ODBC ODBC(Open Database Connectivity)是开放数据库互连的简称,是一种使用SQL的应用程序接口.它是一系列的规范和对数据库访问的API.那么API+SQL就可以执行对数据库的操作.它是不依赖于DBMS的,即通过ODBC可以以相同的方式连接大部分数据库.它包括了应用程序

C#与数据库访问技术总结(十八)

ADO.NET 代码综合示例 前面已经介绍过OLE DB.NET和SQL Server.NET数据提供者可以用来连接不同的数据源. 以下代码不仅综合演示了使用ADO.NET的这两种数据提供者访问数据库的一般步骤,而且说明了使用不同种类的ADO.NET组件集合访问数据库的一般步骤. 可以通过代码进一步了解这两种数据提供者访问方式的异同之处. 使用OLE DB.NET  Provider OLE DB的数据提供者可以访问Access和SQL等数据库,代码如下: //设置连接字符串 string db

C#与数据库访问技术总结(十五)之 DataAdapter对象代码示例

DataAdapter对象代码示例 下面的代码将说明如何利用DataAdapter对象填充DataSet对象. private static string strConnect=" data source=localhost;uid=sa;pwd=aspent;database=LOGINDB" string sqlstr=" select * from USER "; //利用构造函数,创建DataAdapter SqlDataAdapter da=new Sql

ADO.NET数据库访问技术(转)

这几天的自学,现在总结一下关于C#中连接数据库的一些知识点: 1.使用Connection连接数据库的步骤: (1).添加命名空间 System.Data.SqlClient(注意:初学者经常会忘记) (2)定义连接字符串.连接SQL Server 数据库时: server=服务器名:database=数据库名:uid=用户名:pwd=密码:例如:要连接本机上的StudentManagement数据库,用户名为sa,密码为111 string connString="server=.;datab

点评阿里JAVA手册之MySQL数据库 (建表规约、索引规约、SQL语句、ORM映射)

下载原版阿里JAVA开发手册  [阿里巴巴Java开发手册v1.2.0] 本文主要是对照阿里开发手册,注释自己在工作中运用情况. 本文内容:MySQL数据库 (建表规约.索引规约.SQL语句.ORM映射) 本文难度系数为三星(★★★) 本文为第四篇 第一篇 点评阿里JAVA手册之编程规约(命名风格.常量定义.代码风格.控制语句.注释规约) 第二篇 点评阿里JAVA手册之编程规约(OOP 规约 .集合处理 .并发处理 .其他) 第三篇 点评阿里JAVA手册之异常日志(异常处理 日志规约 ) 第四篇

数据库表设计的很灵活,是否做SQL语句也那么容易呢

由于项目需要,我们把一些不经常变的常数通过数据字段配置好,系统初始化的时候通过数据库字段去更新数据.下面就实例说明. 我有一张这样的表 ,你会发现meterkindid和measureid是代码,只有通过数据配置的数据字典才能解析出我们要的值,下面为数据字典表结构 ,这样设计就很灵活,FieldID为列名称,ID为上面表的值,value为解析值,也就是代码对应的名称,下面再发一张字典的数据图 MK001和MK002对应数据字典的水表跟电表,MS001和MS002对应数据字典的计量单位分别为吨还是