zoukankan      html  css  js  c++  java
  • 操作数据库

    
    

    在操作数据库时,将数据方法封装为不同类,增加程序的可读性

    
    

    提供数据连接对象的类




    using
    System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.SqlClient; namespace ConsoleApplication1 { //提供数据连接对象 public class DBConnect { private static string connstring = "server=.;database=mydb;user=sa;pwd=123"; public static SqlConnection Conn { get { return new SqlConnection(connstring); } } } }


    建属性

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

    
    

    namespace ConsoleApplication1
    {
    public class Nation
    {
    private string code;

    
    

    public string Code
    {
    get { return code; }
    set { code = value; }
    }
    private string name;

    
    

    public string Name
    {
    get { return name; }
    set { name = value; }
    }
    }
    }

    封装运算方法

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

    namespace ConsoleApplication1
    {
    //主要实现对Nation表的各种操作(增删改查)
    public class NationDA
    {
    private SqlConnection _conn; //连接对象
    private SqlCommand _cmd; //命令对象
    private SqlDataReader _dr; //读取器对象

    //构造方法来初始化连接对象 命令对象
    public NationDA()
    {
    _conn = DBConnect.Conn; //对连接对象进行初始化
    _cmd = _conn.CreateCommand(); //对命令对象进行初始化
    }

    //添加数据的方法
    public bool Add(string code,string name)
    {
    _cmd.CommandText = "insert into Nation values(@code,@name)";
    _cmd.Parameters.AddWithValue("@code",code);
    _cmd.Parameters.AddWithValue("@name",name);

    _conn.Open();
    int n = _cmd.ExecuteNonQuery();
    _conn.Close();

    if (n > 0)
    {
    return true;
    }
    else
    {
    return false;
    }
    }

    //查询所有数据的方法
    public List<Nation> Select()
    {
    _cmd.CommandText = "select * from Nation";
    _conn.Open();
    _dr = _cmd.ExecuteReader();
    _conn.Close();

    //定义一个空的集合
    List<Nation> list = new List<Nation>();

    if (_dr.HasRows)
    {
    while (_dr.Read())
    {
    //造一个Nation对象
    Nation data = new Nation();
    data.Code = _dr[0].ToString();
    data.Name = _dr[1].ToString();

    //扔到集合里面
    list.Add(data);
    }
    }

    return list;
    }
    }
    }

    主函数调用

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

    namespace ConsoleApplication1
    {
    class Program
    {
    static void Main(string[] args)
    {
    Console.WriteLine("请输入代号:");
    string code = Console.ReadLine();

    Console.WriteLine("请输入名称:");
    string name = Console.ReadLine();

    NationDA da = new NationDA();

    if (da.Add(code, name))
    {
    Console.WriteLine("添加成功!");
    }
    else
    {
    Console.WriteLine("添加失败!");
    }


    Console.ReadLine();
    }
    }
    }

     
  • 相关阅读:
    JAVA学习之常用集合List,Set,Map
    【收藏】SQL多行变一列
    sql 多个字段分组,删除重复记录,保留ID最小的一条
    【转】 JavaScript:history.go() 的妙用(转) 处理post回发后返回
    【转】SQL SERVER 2005中如何获取日期(一个月的最后一日、上个月第一天、最后一天、一年的第一日等等)
    require.context实现自动化导入文件
    Vue进阶——解析V-MODEL
    ES6 的遍历器接口 Iterator
    必须掌握的ES6新特性
    Vue自定义指令获取DOM元素
  • 原文地址:https://www.cnblogs.com/kun-boke/p/5880364.html
Copyright © 2011-2022 走看看