zoukankan      html  css  js  c++  java
  • 项目中使用的自定义数据访问类(复杂查询,复杂操作)

    using System;
    using System.Collections.Generic;
    using System.Text;
    using MySql.Data.MySqlClient;
    using GoMusic.Data.MySqlClient;
    using GoMusic.Data;
    using Gta.VSL.Entities;
    using System.Data;
    
    namespace Gta.VSL.MySqlClient
    {
        /// <summary>
        /// 表的数据访问类
        /// </summary>
    	public partial class CourseCycleRepository
        {
            /// <summary>
            /// 从搜索类里面拼接参数化的SQL字符串
            /// </summary>
            /// <param name="searchEntity">搜索类</param>
            /// <param name="sqlParams">搜索的参数,不能传入Null</param>
            /// <param name="whereSqlAppender">安全的SQL语句</param>
            protected override void GetWhereSqlBySearchItemCore(SearchCourseCycle searchEntity, List<MySqlParameter> sqlParams, StringBuilder whereSqlAppender)
            {
                if (searchEntity.CoursePlan_IdEqual.HasValue)
                {
                    this.CombineSqlQueryCondition(c => c.CoursePlan_Id,
                       ConditionCompareChar.Equal,
                       searchEntity.CoursePlan_IdEqual.Value,
                       whereSqlAppender,
                       sqlParams);
                }
                if (searchEntity.RecordStatusEqual.HasValue)
                {
                    this.CombineSqlQueryCondition(c => c.RecordStatus,
                       ConditionCompareChar.Equal,
                       searchEntity.RecordStatusEqual.Value,
                       whereSqlAppender,
                       sqlParams);
                }
                if (searchEntity.StartTimeLessThanEqual.HasValue)
                {
                    this.CombineSqlQueryCondition(c => c.StartTime,
                       ConditionCompareChar.LessThanEqual,
                       searchEntity.StartTimeLessThanEqual.Value,
                       whereSqlAppender,
                       sqlParams);
                }
                if (searchEntity.EndTimeGreateThanEqual.HasValue)
                {
                    this.CombineSqlQueryCondition(c => c.EndTime,
                       ConditionCompareChar.GreaterThanEqual,
                       searchEntity.EndTimeGreateThanEqual.Value,
                       whereSqlAppender,
                       sqlParams);
                }
            }
    
            /// <summary>
            /// 课程在该周是否存在课程安排
            /// </summary>
            /// <param name="weekNum">周编号</param>
            /// <param name="courseId">课程Id</param>
            /// <returns></returns>
            public bool HasCourseCycle(int weekNum, int courseId)
            {
                string formatString = @"SELECT
                                    COUNT(*)
                                    FROM
                                    coursecycle
                                    LEFT JOIN courseplan ON coursecycle.CoursePlan_Id = courseplan.Id
                                    LEFT JOIN course ON courseplan.Course_Id = course.Id
                                    WHERE
                                    coursecycle.CycleCount = {0} AND
                                    course.Id = {1} AND
                                    coursecycle.RecordStatus = 1";
                string sqlString = string.Format(formatString, weekNum, courseId);
                object count = MySqlDbHelper.ExecuteScalar(CommandType.Text, sqlString);
                if (Convert.ToInt32(count) > 0)
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
    	}
    }

  • 相关阅读:
    jQuery加载
    2.第一个flask web程序
    [转]前端懒加载以及预加载
    [转]当你在浏览器中输入 google.com 并且按下回车之后发生了什么?
    [转]如何让在FLASH不浮动在层之上
    逻辑回归基础梳理
    线性回归基础梳理
    [傻瓜式一步到位] 阿里云服务器Centos上部署一个Flask项目
    Java学习之"Hello World"
    JDK安装及Java环境变量配置
  • 原文地址:https://www.cnblogs.com/smartsmile/p/6234078.html
Copyright © 2011-2022 走看看