C#与数据库访问技术总结(六)之Command对象创建SQl语句代码示例
Command对象创建SQl语句代码示例
说明:前面介绍了 Command 对象的方法和一些属性,回顾一下 Command对象主要用来执行SQL语句。利用Command对象,可以查询数据和修改数据。
在下面这段代码里,首先根据连接字符串创建一个SqlConnecdon连接对象,并用此对象连接数据源:然后创建一个SqlCommand对象,并用此对象的ExecuteNonQuery方法执行不带返回结果集的SQL语句。
//连接字符串 private static string strConnect=" data source=localhost;database=LOGINDB;uid=sa;pwd=aspent;"
// 根据连接字符串创建SqlConnection 连接句柄
SqlConnetion objConnection =new SqlConnection(strConnect);
//数据库命令
SqlCommand objCommand =new SqlCommand( " ",objConnection);
// 设置sql语句
objCommand.CommandText= " INSERT INTO USERS " + " (USERNAME, NICKNAME, USERPASSWORD, USEREMAIL, USERROLE, CREATDATE, LASTMODIFYDATE) "+ " VALUES " +" (@USERNAME, @NICKNAME, @USERPASSWORD, @USEREMAIL, @USERROLE, @CREATDATE, @LASTMODIFYDATE ) ";
// 以下省略设置各值的语句
……
try
{
//打开数据库连接
if( objConnection.State == ConnectionState. Closed )
{
objConnection.Open();
}
//获取运行结果,插入数据
objCommand.ExecuteNonQuery();
//省略后继动作
……
}
catch(SqlException e)
{
Response.Write(e.Message.ToString());
}
finally
{
//关闭数据库连接
if(objConnection.State == ConnectionState.Open)
{
objConnection.Close();
}
}
这段代码是连接数据库并执行操作的典型代码。
其中,操作数据库的代码均在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();
C#与数据库访问技术总结(六)之Command对象创建SQl语句代码示例的更多相关文章
- C#与数据库访问技术总结(十四)之DataAdapter对象
DataAdapter对象 DataAdapter对象主要用来承接Connection和DataSet对象. DataSet对象只关心访问操作数据,而不关心自身包含的数据信息来自哪个Connectio ...
- C#-数据库访问技术 ado.net——创建 数据库连接类 与 数据库操作方法 以及简单的数据的添加、删除、修改、查看
数据库访问技术 ado.net 将数据库中的数据,提取到内存中,展示给用户看还可以将内存中的数据写入数据库中去 并不是唯一的数据库访问技术,但是它是最底层的数据库访问技术 1.创建数据库,并设置主外键 ...
- C#与数据库访问技术总结(十八)
ADO.NET 代码综合示例 前面已经介绍过OLE DB.NET和SQL Server.NET数据提供者可以用来连接不同的数据源. 以下代码不仅综合演示了使用ADO.NET的这两种数据提供者访问数据库 ...
- c# 窗体开发4 数据库访问技术
ADO.NET的名称起源于ADO(ACTIVEX DATA OBJECTS) USING SYSTEM; USING SYSTEM.COLLECTIONS.GENERIC; USING SYSTEM. ...
- C#与数据库访问技术总结(十五)之 DataAdapter对象代码示例
DataAdapter对象代码示例 下面的代码将说明如何利用DataAdapter对象填充DataSet对象. private static string strConnect=" data ...
- 点评阿里JAVA手册之MySQL数据库 (建表规约、索引规约、SQL语句、ORM映射)
下载原版阿里JAVA开发手册 [阿里巴巴Java开发手册v1.2.0] 本文主要是对照阿里开发手册,注释自己在工作中运用情况. 本文内容:MySQL数据库 (建表规约.索引规约.SQL语句.ORM映 ...
- 从数据库中查询所有表及所有字段的SQL语句
从数据库中查询所有表及所有字段的SQL语句 由于一个小项目的需要,近日完成一个从数据库中查询所有表及所有字段的方法,其实用两条SQL语句就可以完成. Sql Server版:列出当前DB中所有表:se ...
- C#与数据库访问技术总结(十六)之 DataSet对象
DataSet对象 DataSet对象可以用来存储从数据库查询到的数据结果,由于它在获得数据或更新数据后立即与数据库断开,所以程序员能用此高效地访问和操作数据库. 并且,由于DataSet对象具有离线 ...
- 数据库访问技术 odbc dao rdo uda jet oledb
一.UDA(UniversalDataAccess) 这是微软提供的通用数据访问策略.包括ADO.OLEDB和ODBC.它不光提供了数据库的访 问能力,对于其它的数据存储技术也同样支持,如目录服务.E ...
随机推荐
- python json学习之路1-认识json格式数据
JSON 语法规则 JSON 语法是 JavaScript 对象表示语法的子集. 数据在键值对中 数据由逗号分隔 花括号保存对象 方括号保存数组JSONJSON 名称/值对 JSON 数据的书写格式是 ...
- 百思不得骑姐的问题——难道是控件的bug?
直接进入主题,困惑了一下午了. 要实现的功能: winform的checkedlistbox控件 点击 “全部” 就都选上,可是如果点击过快就会出现如上现象,下面选项未显示选中. 代码如下: pr ...
- UI组件之Group
当Group旋转或缩放时,它的孩子们正常绘制,并且Batch变换后正确的旋转或缩放. 绘制Group前,Batch flush使得变换可以设置.有很多Group时这将可能成为性能瓶颈.如果在一组演员不 ...
- Exception异常规范
把异常的栈轨迹以String形式返回 /** * 把异常的栈轨迹以String形式返回,而不是直接打印到console * @author King * @time 2015-04-29 * @ret ...
- C语言学习笔记(一)_hello world
一.建立一个文件a.c,写入: #include <stdio.h> //使用printf库函数之前,必须include <stdio.h>int main()//main函数 ...
- C#拼接地图瓦片
为了在AE程序中使用离线的电子地图,思路如下: 利用下载工具下载地图切片,然后利用C#进行切片拼接成一张图片,最后使用ArcMap进行地理配准,然后发布成ArcGIS Server 切片服务供程序使用 ...
- Selenium2+python自动化21-TXT数据参数化
前言 在17篇我们讲了excel数据的参数化,有人问了txt数据的参数化该怎么办呢,下面小编为你带你txt数据参数化的讲解 一.以百度搜索为例,自动搜索五次不同的关键字.输入的数据不同从而引 ...
- ini_set 设置php配置项 在windows和linux下的不同
在win下,当你要include多个路径的话,你要用“:”隔开,但在linux下就使用":"隔开的.. if (substr(php_uname(), 0, 7) == " ...
- 管理权限<八>
权限:如果用户要访问其它方案的对象,则必须为其授予对象的权限.为权限 权限 权限是指执行特定类型 sql 命令或是访问其它方案对象的权利,包括系统权限和对象权限两种. 系统权限 系统权限介绍 ...
- Appium客户端
Appium版本:1.5.3 Xcode有两个版本:Xcode8.1 Xcode7.2.1 iOS10以下只能用Xcode7.2.1 iOS10及以上可以用Xcode8.1 1.Appium客 ...