浅谈ADO.NET数据库脚本

 更新时间:2021年9月22日 10:10  点击:1771

这次我使用ADO.NET来插入一条数据,到数据库中。主用到存储过程。我不想每次都是用SQL文本的形式了,那样始终没有进步~~~

下面首先,我把我这次练习要用到的数据库脚本,贴出来:

 USE master --使用系统数据库
 GO
 IF EXISTS(SELECT * FROM sysdatabases WHERE name=N'DB_MyStudentLife') 
 DROP DATABASE [DB_MyStudentLife]; --如果要创建的数据库存在的话,就删除
 GO
 CREATE DATABASE [DB_MyStudentLife] --创建数据库
 GO
 USE [DB_MyStudentLife]  --使用数据库
 GO
 IF EXISTS(SELECT * FROM sysobjects WHERE name=N'MyClass')
 DROP TABLE [MyClass]   --如果要创建的数据表存在的话,就删除(注意sysobjects,一定要全部是小写的,不然有错误,不能写成大写的。)
 GO
 CREATE TABLE MyClass        --创建数据表
 (
  C_ID INT NOT NULL PRIMARY KEY,    --班级编号
  C_Name NVARCHAR(200) not null,    --班级名称
  C_Descr nvarchar(max) not null    --班级简介
 
 );
 GO
 IF EXISTS(SELECT * FROM sysobjects WHERE name=N'MyStudent')
 DROP TABLE MyStudent
 GO
 CREATE TABLE MyStudent
 (
 S_ID int not null primary key, --学号
 S_Name nvarchar(50) not null,     --姓名
 S_Gender char(2) not null,      --性别
 S_Address nvarchar(max) not null ,    --地址
 S_Phone nvarchar(50)not null,     --电话
 S_Age int not null,       --年龄
 S_Birthday datetime not null,     --生日
 S_CardID int not null,       --身份证号码
 S_CID int not null references MyClass(C_ID) --班级编号
 
 );

接着大家选中刚才执行脚本,创建好的数据库,然后使用我下面的数据,向数据库表里面添加数据吧

 insert into MyClass(C_ID,C_Name,C_Descr)values(1,'软件1108班','武汉软件工程职业学院');
 insert into MyClass(C_ID,C_Name,C_Descr)values(2,'软件1107班','武汉软件工程职业学院');
 insert into MyClass(C_ID,C_Name,C_Descr)values(3,'实验班','武汉软件工程职业学院');
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('1','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('2','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('3','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('4','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('5','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('6','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('7','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('8','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('9','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('10','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('11','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('12','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('13','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('14','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('15','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('16','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);
 insert into MyStudent(S_ID,S_Name,S_Gender,S_Age,S_Birthday,S_CardID,S_Phone,S_Address,S_CID)values('17','李四','男','22','1992-09-26','111111111','11232131234',N'深圳宝安石岩',1);

说明一下,等会我要向MyClass表中插入数据,现在为这个表创建一个插入的存储过程:

IF OBJECT_ID('Ins_ClasseD','P') IS NOT NULL 
 DROP PROCEDURE Ins_ClasseD
 GO 
 CREATE PROCEDURE Ins_ClasseD
 @C_ID int , 
 @C_Name nvarchar(200) ,
 @C_Descr nvarchar(max)
 AS
 INSERT INTO dbo.MyClass
   ( C_ID, C_Name, C_Descr )
 VALUES ( @C_ID, -- C_ID - int
    @C_Name, -- C_Name - nvarchar(200)
    @C_Descr -- C_Descr - nvarchar(max)
    );
    
 GO 

下面开始程序实现:

我是复习,ADO.NET,现在就随便建了一个控制台的应用程序,来开始我的测试:

注意;在下面的例子中,为了尽可能简单易于理解,我没有把连接字符串的那部分代码,放到配置文件中。

如果要放的话,要用到System.Configuration命名空间,还有一个ConfigurationManager类..具体的细节就不说了。

请看具体实现代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.SqlClient;

namespace ADO.NET插入一条数据到数据库中
{
 class Program
 {
  //连接字符串
  private static string sqlCon = "server=.;database=DB_MyStudentLife;uid=sa;pwd=Password_1";
  static void Main(string[] args)
  {
   //1创建连接对象(连接字符串)
   SqlConnection scon = new SqlConnection(sqlCon);
   
   //2创建命令对象(为命令对象设置属性)
   SqlCommand scmd = new SqlCommand();
   scmd.CommandText = "Ins_ClasseD";
   scmd.CommandType = CommandType.StoredProcedure; //这里我使用存储过程来插入数据
   scmd.Connection = scon;

   //3打开数据库连接
   scon.Open();
   

   //设置参数
   scmd.Parameters.Add(new SqlParameter("@C_ID",6));
   scmd.Parameters.Add(new SqlParameter("@C_Name", "测试班"));
   scmd.Parameters.Add(new SqlParameter("@C_Descr", "软件测试技术"));
   //4发送命令
   int result= scmd.ExecuteNonQuery();

   //5处理数据
   if (result > 0)
   {
    Console.WriteLine("插入数据成功");
   }
   else
   {
    Console.WriteLine("插入数据失败");
   }
   //6最后一步,差点忘记了,一定要关闭连接
   scon.Close();

   Console.ReadKey();
 
  }
 }
}

程序执行玩之后的效果图:

以上所述就是本文的全部内容了,希望大家能够喜欢。

[!--infotagslink--]

相关文章

  • C#使用Ado.Net更新和添加数据到Excel表格的方法

    这篇文章主要介绍了C#使用Ado.Net更新和添加数据到Excel表格的方法,较为详细的分析了OLEDB的原理与使用技巧,可实现较为方便的操作Excel数据,需要的朋友可以参考下...2020-06-25
  • ADO.NET基础知识汇总

    程序和数据库交互,要通过ADO.NET进行;通过ADO.NET就能在数据库中执行SQL了 。ADO.NET中提供了对不同数据库的统一操作接口(ODBC) 。另外还有一种操作数据库的接口是JDBC...2021-09-22
  • C# Ado.net实现读取SQLServer数据库存储过程列表及参数信息示例

    这篇文章主要介绍了C# Ado.net实现读取SQLServer数据库存储过程列表及参数信息,结合实例形式总结分析了C#针对SQLServer数据库存储过程及参数信息的各种常见操作技巧,需要的朋友可以参考下...2020-06-25
  • ADO.NET之连接池技术的使用详解

    本篇文章是对连接池技术的使用进行了详细的分析介绍,需要的朋友参考下...2021-09-22
  • ADO.NET获取数据(DataSet)同时获取表的架构实例

    下面小编就为大家分享一篇ADO.NET获取数据(DataSet)同时获取表的架构实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-09-22
  • 当年学习ADO.NET的笔记

    那些年学习了ASP.NET后又开始学习ASP.NET的新知识,ADO.NET用于访问数据库,一般可以分为连接模式和非连接模式...2021-09-22
  • ASP.NET中实现把Json数据转换为ADO.NET DataSet对象

    这篇文章主要介绍了ASP.NET中实现把Json数据转换为ADO.NET DataSet对象,本文讲解设计及实现方法,相关代码托管到GITHUB,需要的朋友可以参考下...2021-09-22
  • C#使用ADO.Net部件来访问Access数据库的方法

    数据库的访问是所有编程语言中最重要的部分,C#提供了ADO.Net部件用于对数据库进行访问。本文从最简单易用的微软Access数据库入手讨论在C#中对数据库的访问。...2020-06-25
  • C#  ADO.NET 离线查询的实现示例

    这篇文章主要介绍了C# ADO.NET 离线查询的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
  • ADO.NET实现对SQL Server数据库的增删改查示例

    本篇文章主要介绍了ADO.NET实现对SQL Server数据库的增删改查示例,非常具有实用价值,需要的朋友可以参考下。...2021-09-22
  • 浅谈ADO.NET数据库脚本

    最近跟着公司做了一个小项目,虽然不是很好,却也有点心得,在此和大家分享一下,希望高手能不吝赐教啊。。。还有很多得更加努力学习啊...2021-09-22
  • C#使用Ado.net读取Excel表的方法

    这篇文章主要介绍了C#使用Ado.net读取Excel表的方法,涉及C#使用OLEDB操作Excel的方法,需要的朋友可以参考下...2020-06-25
  • ADO与ADO.NET的区别与介绍

    ADO与ADO.NET简介ADO与ADO.NET既有相似也有区别...2021-09-22
  • ADO.NET 读取EXCEL的实现代码((c#))

    经常需要在数据库与Execl之间互导数据。net时代,ADO.NET可以使用使用Microsoft.Jet.OleDb访问访问Excel,网上已经有很多类似的资源,最典型也是最简单的可能如下:(asp.net环境)...2021-09-22
  • VS2010/VS2013项目创建 ADO.NET连接mysql/sql server详细步骤

    这篇文章主要介绍了VS2010/VS2013项目创建,及ADO.NET连接mysql/sql server详细步骤,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-09-22
  • ADO.NET通用数据库访问类

    这篇文章主要为大家介绍了ADO.NET通用数据库访问类,利用ADO.NET的体系架构打造通用的数据库访问通用类,感兴趣的小伙伴们可以参考一下...2021-09-22
  • ADO.NET实用经验汇总

    这篇文章主要介绍了ADO.NET实用经验汇总,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-09-22
  • ADO.NET编程之基础知识

    ADO.NET是专门为帮助开发人员建立在Intranet或Internet上使用的高效多层数据库应用程序而设计的,它作为Windows平台下开发应用系统的数据访问技术,已经在企业信息系统的开发中得到了广泛的应用。...2021-09-22
  • ADO.NET制做一个登录案例

    这篇文章主要为大家介绍了ADO.NET制做一个登录案例的详细过程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-09-22
  • ADO.NET无连接模式的详细介绍

    这篇文章详细介绍了ADO.NET无连接模式及操作实例,有需要的朋友可以参考一下...2021-09-22