您的当前位置:首页正文

c#方法生成mysql if方法(算工作日)

2023-11-10 来源:画鸵萌宠网

static string retunSQl(string s,string e){ return @"IF ( "+s+ ">" +e+ @", DATEDIFF(" + e + @", " + s + @") - FLOOR( ABS( DATEDIFF( subdate( " + e + @", date_format(" + e + @", ‘%w‘) - 1 ), " + s + @" ) / 7 *- 1 ) ) * 2 *- 1, DATEDIFF(" + e + @", " + s + @") - FLOOR( ABS( DATEDIFF( subdate( " + s + @", date_format( " + s + @", ‘%w‘) - 1 ), " + e + @" ) / 7 *- 1 ) ) * 2 )"; }使用方法:

retunSQl("2016-4-12","2016-4-14");2天
retunSQl(‘2016-4-12‘,‘2016-4-18‘);4天不算周末
 

 

c#方法生成mysql if方法(算工作日)

标签:

小编还为您整理了以下内容,可能对您也有帮助:

判断两个时间之间有多少个工作日,C#SQL

因为工作中一个奇怪的需求,要用SQL语言计算两个日期间有多少个工作日。

设定是一个星期有5个工作日,从星期一到星期五

说明:

第一个星期的工作日数:DATEPART(dw, @begdt)-DATEPART(dw, @begdt),最少0天

末一个星期的工作日数:DATEPART(dw, @enddt),最多5天

计算方法:

如果两个日期处在同一个星期内,直接计算“第一个星期的工作日数”

否则按下面的公式计算

(两个日期间的总天数 - 第一个星期的天数 - 末一个星期的天数) / 7 * 5

+ 第一个星期的工作日数

+ 末一个星期的工作日数

*/

--计算并返回两个日期间的工作小时数(工作日*8)按周一到周五计算

--必须先SET DATEFIRST 1

CREATE FUNCTION dbo.CalcWorkHours(@bdate DATETIME, @edate DATETIME)

RETURNS INTEGER

AS BEGIN

DECLARE @hours INTEGER

IF @@DATEFIRST <> 1 OR @bdate > @edate

RETURN -1

SELECT @hours =

--如果终止日期与起始日期在同一个星期内,只需要计算有几天即可

CASE WHEN DATEPART(wk, @edate-1)-DATEPART(wk,@bdate) = 0 THEN

CASE WHEN DATEPART(dw, @bdate) > 5 THEN 0

WHEN DATEPART(dw, @edate-1) > 5 THEN 6 - DATEPART(dw, @bdate)

ELSE DATEPART(dw, @edate-1) - DATEPART(dw, @bdate) + 1 END

--如果终止日期与起始日期在不同的星期内

--首先计算出除前后两个星期外完整的星期数 * 5

ELSE (DATEDIFF(dd,@bdate,@edate)

- (8-DATEPART(dw, @bdate))

- DATEPART(dw, @edate-1)) / 7 * 5

--再加上第一个星期里的工作日数

+ CASE WHEN DATEPART(dw, @bdate) < 6 THEN 6 - DATEPART(dw, @bdate)

ELSE 0 END

--加上末一个星期里的工作日数

+ CASE WHEN DATEPART(dw, @edate-1)>5 THEN 5 ELSE DATEPART(dw, @edate-1) END

END * 8

RETURN @hours

END

C# 怎么进行Mysql操作

下载一个MySQLDriverCS,然后在你的工程中添加引用里面那个MySQLDriverCS.dll文件

一般下载来是两个文件,出了MySQLDriverCS.dll,还有个libmySQL.dll,这个直接拷到你工程的bin文件夹下。

然后在你工程中Using MySQLDRiverCS;就行了,还有问题请追问,下不到的话留个邮箱我发给你

sql操作你可以去查查sql语句http://ke.baidu.com/view/3146511.htm你要用的这里基本就都有了,使用方法:

MySQLConnection conn = null;

conn = new MySQLConnection(new MySQLConnectionStrin) "127.0.0.1", "数据库名", "登录名(一般用root就可以了)", "登录密码").AsString);

string comm="(这里写你的sql语句)",string comm="delete from 数据表 where 条件表达式"

conn.Open()

comm.ExecuteNonQuery();//执行,不返回任何值

conn.Close();

联想ideapad300-15isk加内存条

联想ideapad300-15isk加内存

联想ideapad300-15isk这款笔记本的配置已经无法满足现在的使用需求了,通过官网查询参数:内存,接口类型:DDR3L(DDR3的低电压版,1.35V),两个插槽,最大内存:16G;硬盘,SATA3,没有光驱,但是有光驱位,所以还有扩展空间,目前来说,扩展之后再用两年应该是没问题的。

...展开

工具原料拆机螺丝刀塑料或金属卡片或一字螺丝刀装机U盘内存条固态硬盘光驱小板光驱托架联想ideapad300-15isk笔记本

/1

首先说一下螺丝,总共有4种,下图红圈标记的四个较粗,其他位置的螺丝较细且多,主要区别这两种,硬盘托架和硬盘连接的四个螺丝特征很明显,就不说了

加内存

1./2

换内存条很简单,只需要把下图红圈圈的两个螺丝卸下,然后往下推(不要掰),就可以取下后盖

2./2

按下图箭头指示,取下原内存条,新内存条斜插,然后按下,完成,只换内存到这里就结束了,剩下的就是把盖子装回去

求教如何利用MySQL语句计算两个日期中工作日的天数(除去周六日的天数...

DATEDIF(start_date,end_date,unit)
Start_date 为一个日期,它代表时间段内的第一个日期或起始日期。
End_date 为一个日期,它代表时间段内的最后一个日期或结束日期。
Unit 为所需信息的返回类型。
Unit 返回
注:结束日期必须大于起始日期
"Y" 时间段中的整年数。
"M" 时间段中的整月数。
"D" 时间段中的天数。
"MD" start_date 与 end_date 日期中天数的差。忽略日期中的月和年。
"YM" start_date 与 end_date 日期中月数的差。忽略日期中的年。
"YD" start_date 与 end_date 日期中天数的差。忽略日期中的年。

求教如何利用MySQL语句计算两个日期中工作日的天数(除去周六日的天数...

DATEDIF(start_date,end_date,unit)
Start_date 为一个日期,它代表时间段内的第一个日期或起始日期。
End_date 为一个日期,它代表时间段内的最后一个日期或结束日期。
Unit 为所需信息的返回类型。
Unit 返回
注:结束日期必须大于起始日期
"Y" 时间段中的整年数。
"M" 时间段中的整月数。
"D" 时间段中的天数。
"MD" start_date 与 end_date 日期中天数的差。忽略日期中的月和年。
"YM" start_date 与 end_date 日期中月数的差。忽略日期中的年。
"YD" start_date 与 end_date 日期中天数的差。忽略日期中的年。

c#怎么连接数据库 用MySQL 详解

1、mysql官网下载 .net连接器

2、引用下载后的mysql.data.dll

3、程序开始加:using MySql.Data.MySqlClient;

4、连接数据库:

  private void button1_Click(object sender, EventArgs e)//登入按钮

        {

            string power = comboBox1.Text.Trim();

            string user = textBox1.Text.Trim();

            string psd = textBox2.Text.Trim();

            string ipaddress = "";

            string mysqluser = "";

            string mysqlpsd = "";

            if (user == "")

            {

                MessageBox.Show("请输入用户名");

            }

            else if (psd == "")

            {

                MessageBox.Show("请输入密码");

            }

            else

            {

                try

                {

                    try

                    {

                        string[] getconfig = File.ReadAllLines("E:/project/configure.txt", Encoding.GetEncoding("gb2312"));

                        ipaddress = getconfig[0].Split(':')[1];//读取ip地址

                        mysqluser = getconfig[1].Split(':')[1];//读取数据库账号

                        mysqlpsd = getconfig[2].Split(':')[1]; //读取数据库密码       

                    }

                    catch (Exception)

                    {

                        MessageBox.Show("配置文件丢失");

                        return;

                    }

                    string query = "SET names gb2312;SELECT COUNT(id) FROM fx_user WHERE name='" + user + "' AND password=MD5('" + psd + "') AND userid='" + power + "'";

                    MySqlConnection cn = new MySqlConnection("server=" + ipaddress + ";user id=" + mysqluser + ";Password=" + mysqlpsd + ";database=system;charset=gb2312");

                 

                cn.Open();

                    MySqlCommand cm = new MySqlCommand(query, cn);

                    MySqlDataReader read = cm.ExecuteReader();      //搜索满足 用户名,密码,操作员的记录。

                    //如果记录没有-->密码或用户名错误

                    if (read.Read())                                //如果记录多余1条-->数据错误,联系管理员

                    {                                               //只有一条记录则成功登入

                        int x = Int32.Parse(read[0].ToString());

                        if (x == 0)

                        {

                            MessageBox.Show("用户名或密码错误");

                        }

                        else if (x > 1)

                        {

                            MessageBox.Show("用户冲突,请联系管理员");

                        }

                        else if (x == 1)

                        {

                            //  MessageBox.Show("登入成功");

                            main mf = new main(power, ipaddress, mysqluser, mysqlpsd);   //将操作员 和 IP地址传入 主窗体 

                            mf.Show();

                            this.Hide();

                            cn.Close();

                        }

                    }

                }

                catch (MySql.Data.MySqlClient.MySqlException ex)

                {

                    switch (ex.Number)

                    {

                        case 0:

                            MessageBox.Show("数据库连接失败1");

                            break;

                        case 1045:

                            MessageBox.Show("数据库密码或用户名错误");

                            break;

                        default:

                            MessageBox.Show("数据库连接失败2");

                            break;

                    }

                }

            }

        }

求 c#连接mysql的方法

第三方组件:Mysql.Data.dll说明:去官方网站下载Mysql.Data.dll,然后在项目中添加该组件的引用,在代码页里输入using Mysql.Data.MysqlClient,我们就可以顺利的使用该类库的函数建立连接了。以下是几个常用函数:#region 建立MySql数据库连接 /// <summary> /// 建立数据库连接. /// </summary> /// <returns>返回MySqlConnection对象</returns> public MySqlConnection getmysqlcon() { string M_str_sqlcon = "server=localhost;user id=root;password=root;database=abc"; //根据自己的设置 MySqlConnection myCon = new MySqlConnection(M_str_sqlcon); return myCon; } #endregion #region 执行MySqlCommand命令 /// <summary> /// 执行MySqlCommand /// </summary> /// <param name="M_str_sqlstr">SQL语句</param> public void getmysqlcom(string M_str_sqlstr) { MySqlConnection mysqlcon = this.getmysqlcon(); mysqlcon.Open(); MySqlCommand mysqlcom = new MySqlCommand(M_str_sqlstr, mysqlcon); mysqlcom.ExecuteNonQuery(); mysqlcom.Dispose(); mysqlcon.Close(); mysqlcon.Dispose(); } #endregion#region 创建MySqlDataReader对象 /// <summary> /// 创建一个MySqlDataReader对象 /// </summary> /// <param name="M_str_sqlstr">SQL语句</param> /// <returns>返回MySqlDataReader对象</returns> public MySqlDataReader getmysqlread(string M_str_sqlstr) { MySqlConnection mysqlcon = this.getmysqlcon(); MySqlCommand mysqlcom = new MySqlCommand(M_str_sqlstr, mysqlcon); mysqlcon.Open(); MySqlDataReader mysqlread = mysqlcom.ExecuteReader(CommandBehavior.CloseConnection); return mysqlread; } #endregion

Top