c#操作SQL Server入门总结
我是一名c#新手。本文只是我是常学习的随笔。
一、下载SQL server软件
听说下载开发板是最好的(开发板如果只是用来学习、研究不算是侵权)。在安装的时候,我也遇到了很多问题,在公司的电脑安装第一遍的时候,竟然没有安装MSSMS(Microsoft Sql Server Manager Studio),于是又安装了一遍才得以成功。于是以windows身份验证顺利链接了数据库服务器。但是回到家中,用家中的笔记本连续装了一周才搞定。(每次安装完,都无法连接到数据库引擎),是什么原因,好像是我sa帐号也在安装的时候填写了。
二、新建数据库以及表
1、新建一个名为db_19的数据库;2、在数据库中新建表
三、C#对Sql Server的各种操作
1、引入命名空间
System.Data; System.Data.SqlClient;
2、定义连接字符串,并建立连接对象
//sql server 身份验证 连接字符串 private string ConnstrSqlServer = "server=服务器名称;uid=登录名称;pwd=登录密码;database=数据库名称";
//windows 身份验证连接字符串 private string ConnstrWindows = "server=服务器名称;database=数据库名称;Trusted_Connection=SSPI";
其中,server是指数据库所在的机器(服务器),如果使用当前机器(本地机器)的话,可 以使用“.”、“(local)”、“127.0.0.1”或本地机器的名字。如果使用其它机器上的数据库的话,可以使用那台机器的机器名字(确保域和工 作组的正确)或IP地址。database指的数据库的名字。uid和pwd分别代表连接数据库的用户名和密码。
建立连接对象使用以下两条语句:
string connString = @"Data Source = LS--20180714CSF\SQL2018; Initial Catalog = db_19; Integrated Security = True";
SqlConnection conn = new SqlConnection(connString);
3、打开数据库连接
try
{
conn.Open();
MessageBox.Show("数据库链接成功","系统消息");
}
catch
{
MessageBox.Show("链接数据库失败", "系统消息");
}
4、command命令对象的应用
Command用于向数据库传输的命令的对象,其构造函数常用两个参数,一个参数是所使用的 命令文本(CommandText),另一个为所使用的连接对象Connection。
假设我们想使用SqlClient模式查询Sql Server中db_19数据库中Table_1表中的xh(学号)、xm(姓名)和xb(性别)三列的值,则可以建立如下的命令对象(sConn参见建立的连接sConn:
SqlCommand sCmd = new SqlCommand("SELECT xh,xm,xb FROM Table_1",sConn);
亦可使用如下的形式:
SqlCommand sCmd = new SqlCommand();
sCmd.CommandText = "SELECT xh,xm,xb FROM student";
sCmd.Connection = sConn;
命令对象常用的有三个方法:ExecuteReader(), ExecuteNonQuery()和ExecuteScalar()。ExecuteReader方法用于返回查询结果的全部数据。 ExecuteNonQuery方法用于返回所影响的行数,一般用于Insert、Update和Delete操作。ExecuteScalar方法返回 结果中的第一行第一列的值。
//定义命令对象sCmd
SqlCommand sCmd = new SqlCommand(sql, conn);
5、数据读取器DataReader
数据读取器应与命令对象配合使用,下面接着4中的例子来写:
SqlDataReader sdr = null;
sdr = sCmd.ExecuteReader(); //执行命令对象,并用sdr指向结果集的第一条记录。
while(sdr.Read()) //每读取一条记录后,指向其下一条记录
{
Console.WriteLine("学号:{0},姓名:{1},性别:{2}",sdr[0],sdr[1],sdr[2]);
}
sdr.Close(); //关闭读取器
//定义数据读取器sdr
SqlDataReader sdr = null;
//执行命令对象sCmd并赋值给sdr
sdr = sCmd.ExecuteReader();
//循环输出sdr中的内容
while (sdr.Read())
{
string sdrStirng = sdr["xh"] + " " + sdr["xm"] + sdr["xb"] + "\r\n";
textBox1.AppendText(sdrStirng);
}
//关闭数据读取器
sdr.Close();
//关闭数据库连接
conn.Close();
C#批量向SQL Server插入数据
private void button1_Click(object sender, EventArgs e)
{
string connString = @"Data Source = LS--20180714CSF\SQL2018; Initial Catalog = db_19; Integrated Security = True";
DataTable dt = new DataTable();
dt.Columns.Add("编号", typeof(int));
dt.Columns.Add("xh", typeof(int));
dt.Columns.Add("xm", typeof(int));
dt.Columns.Add("xb", typeof(int)); Stopwatch sw = new Stopwatch();
sw.Start(); for (int i = ; i <= ; i++)
{
dt.Rows.Add(i, i, i, i);
}
//using (SqlConnection conn = new SqlConnection(SqlHelper.Connstr))
using (SqlConnection conn = new SqlConnection(connString))
{
SqlBulkCopy bulkCopy = new SqlBulkCopy(conn);
bulkCopy.DestinationTableName = "Table_1";
bulkCopy.BatchSize = dt.Rows.Count;
conn.Open();
if (dt != null && dt.Rows.Count != )
{
bulkCopy.WriteToServer(dt);
}
} sw.Stop();
TimeSpan ts = sw.Elapsed;
MessageBox.Show("向数据表Table_1批量添加数据成功!","系统消息");
}
c#操作SQL Server入门总结的更多相关文章
- PHP操作SQL Server 2008/2012
PHP操作SQL Server驱动,微软官方提供2个版本,Version 2.0 和 Version 3.0 Version 2.0 版本支持的操作系统有: Windows Server 2003 S ...
- 使用php来访问操作sql server
使用php来访问操作sql server 在此分成三步走: 第一部:查看配置,下载文件 首先查看自己的php和sql server版本 Php文件输入echo PHP_VERSION 运行脚本就可以 ...
- SQL Server学习之路(七):Python3操作SQL Server数据库
0.目录 1.前言 2.准备工作 3.简单测试语句 4.提交与回滚 5.封装成类的写法 1.前言 前面学完了SQL Server的基本语法,接下来学习如何在程序中使用sql,毕竟不能在程序中使用的话, ...
- Nodejs 操作 Sql Server
Nodejs 操作 Sql Server Intro 最近项目需要爬取一些数据,数据有加密,前端的js又被混淆了,ajax请求被 hook 了,有些复杂,最后打算使用 puppeteer 来爬取数据. ...
- [转]C#操作SQL Server数据库
转自:C#操作SQL Server数据库 1.概述 ado.net提供了丰富的数据库操作,这些操作可以分为三个步骤: 第一,使用SqlConnection对象连接数据库: 第二,建立SqlComman ...
- 数据库SQL Server2012笔记(七)——java 程序操作sql server
1.crud(增删改查)介绍:create/retrieve/update/delete 2.JDBC介绍 1)JDBC(java database connectivity,java数据库连接) 2 ...
- Python 学习笔记:Python 操作 SQL Server 数据库
最近要将数据写到数据库里,学习了一下如何用 Python 来操作 SQL Server 数据库. 一.连接数据库: 首先,我们要连接 SQL Server 数据库,需要安装 pymssql 这个第三方 ...
- 使用WinDbg调试SQL Server——入门
这篇文章我想探究下SQL Server里完全不同的领域:如果使用WinDbg(来自针对Windows的调试工具)调试SQL Server.在我们进入枯涩细节之前,我想详细解释下为什么选择这样晦涩的话题 ...
- ORM之Dapper操作Sql Server和MySql数据库
1.为什么选择Dapper 1)轻量. 2)速度快.Dapper的速度接近与IDataReader,取列表的数据超过了DataTable. 3)支持多种数据库.Dapper可以在所有Ado.net P ...
随机推荐
- Git的使用--如何将本地项目上传到Github(三种简单、方便的方法)
一.第一种方法: 1.首先你需要一个github账号,所以还没有的话先去注册吧! https://github.com/ 我们使用git需要先安装git工具,这里给出下载地址,下载后一路(傻瓜式安装) ...
- TLS 1.3 VS TLS 1.2,让你明白 TLS 1.3 的强大
HTTPS 加密时代已经来临,近两年,Google.Baidu.Facebook 等互联网巨头,不谋而合地开始大力推行 HTTPS, 2018 年 7 月 25 日,Chrome 68 上线,所有 H ...
- 祝雷(依乐祝):一份来自29岁.NET老程序员的自白
潘老师的文笔果然了得,经过潘老师的妙笔生花后,文章的阅读体验果然好了很多!这里再次感谢潘老师的支持! 祝雷(合肥.NET 俱乐部发起人) [个人介绍] 博客园知名博主(依乐祝).6年以上.NET技术栈 ...
- Zara带你快速入门WPF(2)---布局篇
一.章节目标 这几章节我们会创建一个完整的Window程序,包括使用DataGrid空间,数据绑定是把.NET类中的数据提供给用户界面的一个重要概念,还允许修改数据,包括.NET4.5新增的INoti ...
- 微信小程序使用nginx方向代理实现内嵌非业务域名
通过上一篇文章简单介绍了一下微信小程序的新组件<web-view>,实现了在小程序中内嵌业务域名的功能.但是boss要的小程序中不仅想内嵌业务域名,还想要打开一些非业务域名(无法操作web ...
- asp.net core系列 25 EF模型配置(隐藏属性)
一. 隐藏属性概述 隐藏属性也叫影子属性,该属性不是在.net实体类中定义的属性,而是在EFCore模型中为该实体类型定义的属性.这些属性的值和状态完全在变更跟踪器中维护.它有二个功能:(1)当数据库 ...
- 基本 SQL 之增删改查(二)
上一篇文章中,我们介绍了 SQL 中最基本的 DML 语法,包括 insert 的插入数据.update 的更新数据.delete 的删除数据以及基本的查询语法,但大多比较简单不能解决我们日常项目中复 ...
- Centos 7.0 zabbix 部署
1.LAMP 环境搭建 初次安装可以先关闭selinux 和 firewall [root@localhost ~]# setenforce [root@localhost ~]# systemctl ...
- Spring Cloud Alibaba与Spring Boot、Spring Cloud之间不得不说的版本关系
这篇博文是临时增加出来的内容,主要是由于最近连载<Spring Cloud Alibaba基础教程>系列的时候,碰到读者咨询的大量问题中存在一个比较普遍的问题:版本的选择.其实这类问题,在 ...
- 内存管理-MRC与ARC详解
Objective-C提供了两种内存管理机制MRC(Mannul Reference Counting)和ARC(Automatic Reference Counting),为Objective-C提 ...