当前位置: 首页 > 编程笔记 >

浅谈ADO.NET数据库脚本

巫欣荣
2023-03-14
本文向大家介绍浅谈ADO.NET数据库脚本,包括了浅谈ADO.NET数据库脚本的使用技巧和注意事项,需要的朋友参考一下

这次我使用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();
 
  }
 }
}

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

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

 类似资料:
  • 本文向大家介绍浅谈sql数据库去重,包括了浅谈sql数据库去重的使用技巧和注意事项,需要的朋友参考一下   关于sql去重,我简单谈一下自己的简介,如果各位有建议或有不明白的欢迎多多指出。   关于sql去重最常见的有两种方式:DISTINCT和ROW_NUMBER(),当然了ROW_NUMBER()除了去重还有很多其他比较重要的功能,一会我给大家简单说说我自己在实际中用到的。   假如有张Use

  • 本文向大家介绍浅谈PHP的数据库接口和技术,包括了浅谈PHP的数据库接口和技术的使用技巧和注意事项,需要的朋友参考一下 1、php支持哪些数据库(拥有哪些数据库接口) Adabas D ,InterBase ,PostgreSQL ,dBase ,FrontBase ,SQLite ,Empress ,mSQL ,Solid ,FilePro(只读),Direct MS-SQL ,Sybase ,

  • 本文向大家介绍浅谈MySQL数据库的备份与恢复,包括了浅谈MySQL数据库的备份与恢复的使用技巧和注意事项,需要的朋友参考一下 一、MySQL 常见的备份方式 1. 直接拷贝数据库文件(物理拷贝) 2. 使用 mysqldump 工具备份 3. 使用 mysqlhotcopy 工具备份 4. 使用 mysql 的主从同步复制,实现数据实时同步备份 二、MySQL 物理数据文件结构介绍 1. 日志文

  • 本文向大家介绍浅谈如何使用vb.net从数据库中提取数据,包括了浅谈如何使用vb.net从数据库中提取数据的使用技巧和注意事项,需要的朋友参考一下 1.设置从Model中的Sub Main 启动 2.程序结构 3.Model1 4.FormStudentSysMain.vb 5.FormSearchStudent.vb 6.运行结果 到此这篇关于浅谈如何使用vb.net从数据库中提取数据的文章就介

  • 本文向大家介绍浅谈Python中的数据类型,包括了浅谈Python中的数据类型的使用技巧和注意事项,需要的朋友参考一下 数据类型: Float/Int: 运算符: / — 浮点运算除  // — 当结果为正数时,取整; 11//5 =2; 11//4 = 2 当结果为负数时,向下取整;-11//5=-3; -11//4=-3 当分子分母都是float,结果为float型 ** —  计算幂; 11

  • 本文向大家介绍浅谈PHP中JSON数据操作,包括了浅谈PHP中JSON数据操作的使用技巧和注意事项,需要的朋友参考一下 JSON,全称是JavaScript Object Notation。它是基于JavaScript编程语言ECMA-262 3rd Edition-December 1999标准的一种轻量级的数据交换格式,主要用于跟服务器进行交换数据。跟XML相类似,它独立语言,在跨平台数据传输