我是一名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入门总结的更多相关文章

  1. PHP操作SQL Server 2008/2012

    PHP操作SQL Server驱动,微软官方提供2个版本,Version 2.0 和 Version 3.0 Version 2.0 版本支持的操作系统有: Windows Server 2003 S ...

  2. 使用php来访问操作sql server

    使用php来访问操作sql server 在此分成三步走: 第一部:查看配置,下载文件 首先查看自己的php和sql server版本 Php文件输入echo PHP_VERSION  运行脚本就可以 ...

  3. SQL Server学习之路(七):Python3操作SQL Server数据库

    0.目录 1.前言 2.准备工作 3.简单测试语句 4.提交与回滚 5.封装成类的写法 1.前言 前面学完了SQL Server的基本语法,接下来学习如何在程序中使用sql,毕竟不能在程序中使用的话, ...

  4. Nodejs 操作 Sql Server

    Nodejs 操作 Sql Server Intro 最近项目需要爬取一些数据,数据有加密,前端的js又被混淆了,ajax请求被 hook 了,有些复杂,最后打算使用 puppeteer 来爬取数据. ...

  5. [转]C#操作SQL Server数据库

    转自:C#操作SQL Server数据库 1.概述 ado.net提供了丰富的数据库操作,这些操作可以分为三个步骤: 第一,使用SqlConnection对象连接数据库: 第二,建立SqlComman ...

  6. 数据库SQL Server2012笔记(七)——java 程序操作sql server

    1.crud(增删改查)介绍:create/retrieve/update/delete 2.JDBC介绍 1)JDBC(java database connectivity,java数据库连接) 2 ...

  7. Python 学习笔记:Python 操作 SQL Server 数据库

    最近要将数据写到数据库里,学习了一下如何用 Python 来操作 SQL Server 数据库. 一.连接数据库: 首先,我们要连接 SQL Server 数据库,需要安装 pymssql 这个第三方 ...

  8. 使用WinDbg调试SQL Server——入门

    这篇文章我想探究下SQL Server里完全不同的领域:如果使用WinDbg(来自针对Windows的调试工具)调试SQL Server.在我们进入枯涩细节之前,我想详细解释下为什么选择这样晦涩的话题 ...

  9. ORM之Dapper操作Sql Server和MySql数据库

    1.为什么选择Dapper 1)轻量. 2)速度快.Dapper的速度接近与IDataReader,取列表的数据超过了DataTable. 3)支持多种数据库.Dapper可以在所有Ado.net P ...

随机推荐

  1. BBS论坛(十五)

    15.1.登录界面完成 (1)front/signbase.html {% from 'common/_macros.html' import static %} <!DOCTYPE html& ...

  2. 强如 Disruptor 也发生内存溢出?

    前言 OutOfMemoryError 问题相信很多朋友都遇到过,相对于常见的业务异常(数组越界.空指针等)来说这类问题是很难定位和解决的. 本文以最近碰到的一次线上内存溢出的定位.解决问题的方式展开 ...

  3. 『玩具装箱TOY 斜率优化DP』

    玩具装箱TOY(HNOI2008) Description P教授要去看奥运,但是他舍不下他的玩具,于是他决定把所有的玩具运到北京.他使用自己的压缩器进行压缩,其可以将任意物品变成一堆,再放到一种特殊 ...

  4. redis 系列16 持久化 RDB

    一.概述 Redis是内存数据库,一旦服务器进程退出,服务器中的数据库内存数据状态也会消失.为了解决这个问题,Redis提供了RDB 持久化功能,这个功能可以将redis在内存中的数据库状态保存到磁盘 ...

  5. gradle插件从3.2.0升级到3.2.1后报错Error: Cannot create directory 项目目录\thirdlib\build\intermediates\packaged_res\debug\drawable

    报错信息如下:  解决方案: 删除thirdlib\build目录,然后重新编译. 但是紧接着又会报类似的错误,只不过build目录变成其他module的了. 所以,先clear build,然后再重 ...

  6. Docker系列03—Docker 基础入门

    本文收录在容器技术学习系列文章总目录 1.概念介绍 1.1 容器 1.1.1 介绍 容纳其它物品的工具,可以部分或完全封闭,被用于容纳.储存.运输物品.物体可以被放置在容器中,而容器则可以保护内容物. ...

  7. DSAPI多功能组件编程应用-使用外部字体(包括资源文件)

    在软件开发过程中,尤其是比较个性化的程序,有时会需要使用非安装字体文件,比如发布的时候附带了一个专用字体,或者该字体文件直接被放入项目资源,当不希望把这个字体安装到用户的操作系统但又想使用它时,本示例 ...

  8. (摘)使用 .NET Core 实现依赖关系注入

    为什么使用依赖关系注入? 使用 .NET,通过 new 运算符(即,new MyService 或任何想要实例化的对象类型)调用构造函数即可轻松实现对象实例化.遗憾的是,此类调用会强制实施客户端(或应 ...

  9. Yii2基本概念之——配置(Configurations)

    在Yii中创建新对象或者初始化已经存在的对象广泛的使用配置,配置通常包含被创建对象的类名和一组将要赋值给对象的属性的初始值,这里的属性是Yii2的属性.还可以在对象的事件上绑定事件处理器,或者将行为附 ...

  10. 【代码笔记】Web-CSS-CSS Padding(填充)

    一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...