ado创建数据模型和数据访问类

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

namespace ConsoleApplication14.model
{
    class car
    {
        //建立数据模型
        //car数据表的各项属性建立成一个类的形式
        private string _Code;
        /// <summary>
        /// 汽车编号
        /// </summary>
        public string Code
        {
            get { return _Code; }
            set { _Code = value; }
        }
        private string _Name;
        /// <summary>
        /// 汽车名称
        /// </summary>
        public string Name
        {
            get { return _Name; }
            set { _Name = value; }
        }
        private string _Brand;
        /// <summary>
        /// 汽车系别
        /// </summary>
        public string Brand
        {
            get { return _Brand; }
            set { _Brand = value; }
        }
        private DateTime _Time;
        /// <summary>
        /// 上市时间
        /// </summary>
        public DateTime Time
        {
            get { return _Time; }
            set { _Time = value; }
        }
        private decimal _Oil;
        /// <summary>
        /// 汽车油耗
        /// </summary>
        public decimal Oil
        {
            get { return _Oil; }
            set { _Oil = value; }
        }
        private int _Powers;
        /// <summary>
        /// 汽车马力
        /// </summary>
        public int Powers
        {
            get { return _Powers; }
            set { _Powers = value; }
        }
        private int _Exhaust;
        /// <summary>
        /// 汽车排量
        /// </summary>
        public int Exhaust
        {
            get { return _Exhaust; }
            set { _Exhaust = value; }
        }
        private decimal _Price;
        /// <summary>
        /// 汽车价格
        /// </summary>
        public decimal Price
        {
            get { return _Price; }
            set { _Price = value; }
        }
        private string _Pic;
        /// <summary>
        /// 汽车对应图片
        /// </summary>
        public string Pic
        {
            get { return _Pic; }
            set { _Pic = value; }
        }

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

namespace ConsoleApplication14.dataoperation
{
    class cardata
    {
        SqlConnection conn = null;//声明数据连接变量,用于cardata类里所有函数
        SqlCommand cmd = null;//声明数据命令变量,用于cardata类里所有函数
        //创建构造函数,调用该类便立即进行数据连接和数据操作命令的创建
        public cardata()
        {
            conn = new SqlConnection("server=.;database=data0425;user=sa;pwd=123;");//创建数据连接
            cmd = conn.CreateCommand();//创建数据操作
        }

        //建立一个查询car表格的函数方法
        /// <summary>
        /// 查询car表里的所有数据
        /// </summary>
        /// <returns>泛型集合类型</returns>
        public List<car> selectall()
        {
            //实例化泛型集合,以便于调用里面的属性
            List<car> list = new List<car>();

            //编写数据操作指令
            cmd.CommandText = "select * from car";
            //开启数据库
            conn.Open();
            //执行读取操作命令
            SqlDataReader dr = cmd.ExecuteReader();
            if(dr.HasRows)
            {
                while(dr.Read())
                {
                    //初始化car类,为car类开辟一个内存空间,以便于调用car类里的属性
                    car c = new car();
                    //为car每个属性里赋值
                    c.Code = dr["Code"].ToString();
                    c.Name = dr["Name"].ToString();
                    c.Brand = dr["Brand"].ToString();
                    c.Time = Convert.ToDateTime(dr["Time"]);
                    c.Oil = Convert.ToDecimal(dr["Oil"]);
                    c.Powers = Convert.ToInt32(dr["Powers"]);
                    c.Exhaust = Convert.ToInt32(dr["Exhaust"]);
                    c.Price = Convert.ToDecimal(dr["Price"]);
                    c.Pic = dr["Pic"].ToString();

                    //将car类c里的数值放到泛型集合list内
                    list.Add(c);
                }
            }
            //关闭数据库
            conn.Close();
            //返回泛型集合类型的值
            return list;
        }

        //建立用汽车姓名模糊查询的函数
        public List<car> selectname(string name)//该函数有返回值,有参数,返回值是泛型集合类型,参数是string类型
        {
            //定义一个泛型集合类型的返回值
            List<car> list=new List<car>();
            //编写查询指令语句
            cmd.CommandText = "select * from car where Name like @name";
            //防注入式字符串攻击
            cmd.Parameters.Clear();
            cmd.Parameters.Add("@name","%"+name+"%");

            //数据库开启
            conn.Open();
            //执行数据读取操作
            SqlDataReader dr = cmd.ExecuteReader();
            if(dr.HasRows)
            {
                while(dr.Read())
                {
                    //初始化一个car类型的变量来接收数据库car表里的每条数据
                    car c = new car();
                    //用c里面的每一个属性接收car表里的每一条记录
                    c.Code = dr["Code"].ToString();
                    c.Name = dr["Name"].ToString();
                    c.Brand = dr["Brand"].ToString();
                    c.Time = Convert.ToDateTime(dr["Time"]);
                    c.Oil = Convert.ToDecimal(dr["Oil"]);
                    c.Powers = Convert.ToInt32(dr["Powers"]);
                    c.Exhaust = Convert.ToInt32(dr["Exhaust"]);
                    c.Price = Convert.ToDecimal(dr["Price"]);
                    c.Pic = dr["Pic"].ToString();

                    //并将每一条值放入list集合中
                    list.Add(c);

                }
            }

            //数据库关闭
            conn.Close();

            //返回list值
            return list;

        }

    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ConsoleApplication14.dataoperation;
using ConsoleApplication14.model;

namespace ConsoleApplication14
{
    class Program
    {
        static void Main(string[] args)
        {
            //建立数据模型和数据访问类

            //查询数据库里data0425数据库类car表的所有内容
            //引用命名空间
            //定义查询函数的返回类型为泛型集合list类,
            //所有要首先初始化一个变量接收cardata类里面查询函数selectall里面的值
            List<car> data = new cardata().selectall();
            //打印出data 里面的值需要使用遍历集合
            foreach(car c in data)//泛型集合里面的类型是car类型
            {
                Console.WriteLine(c.Code+"  "+c.Name+"  "+c.Brand+"  "+c.Time+"  "+c.Oil+"  "+c.Powers+"  "+c.Exhaust+"  "+c.Price+"  "+c.Pic);
            }

            while(true)
            {
            //建立一个汽车名字的模糊查询
            Console.Write("请输入汽车姓名:");
            string uname = Console.ReadLine();
            //调用函数,用已经初始化并赋值的data变量接收,同时用新的值覆盖data变量里原来的值
            data = new cardata().selectname(uname);
            //打印数据
            Console.Clear();
            foreach (car c in data)//泛型集合里面的类型是car类型
            {
                Console.WriteLine(c.Code + "  " + c.Name + "  " + c.Brand + "  " + c.Time + "  " + c.Oil + "  " + c.Powers + "  " + c.Exhaust + "  " + c.Price + "  " + c.Pic);
            }

            }
            Console.ReadKey();
        }
    }
}

时间: 2024-11-10 22:12:42

ado创建数据模型和数据访问类的相关文章

ADO.Net创建数据模型和数据访问类及泛型集合

数据模型和数据访问类:数据模型: 使用面向对象中的封装特性,将数据表中的行数据组成一个同样结构的对象,来单独使用: 数据访问类: 将某一个表的全部增删改查操作的方法写进去,方便统一管理和调用: 数据模型和数据访问类单独创建两个文件件单独放置,方便查看:注意:单独创建的问题件命名空间会自动更改,调用时需要引用命名空间,并且在创建类时第一步要把类的访问权限设置为公开的 创建一个数据库模型和一个数据库访问类,对学生信息表进行简单的操作 数据库信息表: create database netlx go

ado数据模型和数据访问类,泛型集合

using System; using System.Collections.Generic; using System.Linq; using System.Text; using 实体类_数据访问类_泛型集合.moxing;//引用命名空间 using 实体类_数据访问类_泛型集合.shujucaozuo; namespace 实体类_数据访问类_泛型集合 { class Program { static void Main(string[] args) { List<car> data

数据模型和数据访问类以及属性扩展和泛型集合

数据模型: 数据模型就是将一个表中一行的所有属性利用封装写到一个类里面,将数据表中的行数据组成一个同样结构的对象,方便使用. 1 public class Car 2 { 3 SqlConnection conn = null; 4 SqlCommand com = null; 5 public Car() 6 { 7 conn = new SqlConnection("server=.;database=ADOlianxi0425;user=sa;pwd=123;"); 8 com

ADO.NET 实体类和数据访问类

SQL数据库字符串注入攻击:需要使用cmd.Parameters这个集合占位符: @key 代表这个位置用这个占位符占住了 Parameters这个集合中将此占位符所代表的数据补全 cmd.Parameters.Clear(); --添加占位符数据之前,要清空此集合cmd.Parameters.Add("@pwd", Pwd); --占位符内容填充cmd.Parameters.Add("@nname",Nname);cmd.Parameters.Add("

实体类和数据访问类三层开发

实体类,数据访问类 实体类:封装 封装一个类,类名与数据库表名一致,成员变量名与列明一致,多一个下划线 . 成员便令封装玩的属性会与数据表中的列名一致. 每一行数据都可以存成一个对象,操作这个对象,就相当于对某一行数据进行整体操作 数据访问类: 就是将对数据库的一些操作,单独写到一个类中,封成一些方法,等待调用 三层开发: 界面层 - UI层 业务逻辑层 - C#代码部分 数据访问层 - 实体类和数据访问类 就是项目可以从三部分同时进行,一遍布局,一边写方法和封装,一遍写代码,然后再通过调用将几

MVC4 用Linq to SQL创建数据模型

LINQ to SQL 提供了一种非常简单的方法来与 Microsoft SQL Server 数据库交互. 1.创建新的 SQL Server 数据库 点击"视图"-->"服务器资源管理器" ,打开 "服务器资源管理器" 窗口,如下图: 右键"数据连接",选择"创建新的SQL Server 数据库",如下图: 在弹出的对话框填写下图的数据: 查看数据库,新的数据库已经好了. 2.创建 LINQ to

ADO.NET基础巩固-----连接类和非连接类

      最近的一段时间自己的状态还是不错的,早上,跑步,上自习看书,下午宿舍里面编程实战,晚上要么练习代码,要么去打球(在不打就没机会了),生活还是挺丰富的. 关于C#的基础回顾就先到前面哪里,这些要自己在工作中慢慢的去体会,不是说看书就可以掌握的.我们都是从学生时代过来的知道每个人的学习情况是不一样的,所以找到自己的学习节奏是最好不过的. 下面是关于访问数据库[ADO.NET]的学习,之前刚开始学习的时候把这些基本的都过了一遍,但是长时间不使用,一些基本的用法还是会遗忘的.     一:关

获悉文件服务器上的变化和数据访问情况,推荐使用NetWrix文件服务器免费变更通知工具

获悉文件服务器上的变化和数据访问情况 推荐使用NetWrix文件服务器免费变更通知工具 文件服务器(fs服务器)是指在计算机局域网中,以文件数据共享为目标,需要将供多台计算机共享的文件存放于一台计算机中.具有分时系统文件管理的全部功能,提供网络用户访问文件.能够对全网统一管理,能够提供网络用户访问文件.目录的并发控制和安全保密措施的局域网(LAN)服务器.可以是一台能够运行其他应用的通用计算机,也可以是一台专门提供文件服务的专用计算机. 持续追踪文件服务器上对象的变更是非常必要的,便于你及时发现

PHP业务逻辑层和数据访问层设计

以下还是觉得有点抽象 1.面向对象能给我们什么? 进行分析之前,我们先来复习一下面向对象.对象是要进行研究的任何事物.类是具有相同或相似性质的对象的抽象.面向对象的要素:封装.继承.多态.面向对象目的是:如何分配职责. 面向对象设计原则: 单一职责原则 (SRP) 一个类,只有一个引起它变化的原因. 开放-封闭原则 (OCP)(对外)可扩展,(对内)不可修改. 李氏替换原则 (LSP) 子类型必须能够完全替换其父类型. 依赖倒置原则 (DIP) 要依赖于抽象,不要依赖于具体. 接口隔离原则 (I