- 博客(145)
- 资源 (3)
- 收藏
- 关注
原创 sql server 多行数据合并一行显示
在STUFF函数中,第一个参数指定要插入的位置,第二个参数指定要从第一个参数指定的位置开始删除的字符数,第三个参数指定要插入的新值。在此查询中,使用 FOR XML PATH 将每个产品名称转换为逗号分隔的字符串,然后使用 STUFF 将第一个逗号删除并将所有产品名称合并成一个字符串。最后,使用 GROUP BY 在 order_id 列的基础上进行分组。在 SQL Server 中,可以使用 STUFF 和 FOR XML PATH 进行多行合并成一行。
2023-11-15 09:12:34 5292
转载 各数据库SQL查询结果多行数据合并成一行
listagg函数是在oracle11g后新增的,是一个实现字符串聚合的内建函数。也可以实现行转列的功能,将某个字段的多行数据合并成一条。示例,现在有一张风险表,每个风险项(risk_id)对应有多条规则(risk_rule),现在我要按照风险项把对应的规则都查询出来。wm_concat函数是是oracle中常用的函数,功能:行转列,可以将查询出的多行某列值使用逗号进行隔开拼接,成为一条数据。一、Oracle函数多行数据合并成一行。二、Mysql函数多行数据合并成一行。一、wm_concat。
2023-04-26 15:53:29 14342
原创 Aspose.Wrods For Net 按标签 替换HTML内容时 样式设置
Aspose.Wrods For Net 按标签 替换HTML内容时的样式设置
2022-03-21 17:25:17 598
原创 远程桌面保存密码(凭据)的备份导出
远程桌面的非常常用,但系统重装或者更换电脑,都会面临信息要重新录入一遍,万一忘记了密码就连不上了。就像这样:支持凭据登录最大的特色吧,就是可以记住凭据,记住之后再连接这台机器的时候就不需要输入密码的。记住密码是相当方便的,但如果长时间都使用记住密码,而没有自己去输入密码,就可能会忘记密码,要是又忘了密码,电脑又重装了,没留下曾经记住的凭据信息,那就是一个大杯具了。虽然说把密码牢记在心是一个好习惯,但要还能连上的话,就算忘了密码,也还能进去改,所以说还是有必要好好保存和备份这些凭据的。凭据
2021-11-15 16:04:19 5724
原创 Asp.Net Core 密码加密方案
使用PBKDF2算法来创建哈希的方法。PBKDF2全称Password-Based Key Derivation Function,它的基本原理是通过一个伪随机函数(例如HMAC函数),把明文和一个盐值作为输入参数,然后重复进行运算,最终产生秘钥。如果重复的次数足够大,破解的成本将非常大。PBKDF2定义如下DK = PBKDF2(PRF, Password, Salt, c, dkLen)PRF 是一个伪随机函数,可以简单的理解为 Hash 函数。 Password 表示口令 。 Sal
2021-07-29 13:56:34 1867
转载 ASP.NET Core学习资源汇总
ASP.NET Core入门学习资源汇总篇幅比較長,分为七个部分。 (一)认识.NET Core (二)Vistual Studio安装、调试 (三)Asp.Net Core入门指南与学习路线 (四)入门级实战项目手册、官方教程 (五)Asp.Net Core视频学习资源 (六)博客教程 (七)部署与测试 (八)开源项目推荐 (一)认识.NET Core从2014年11月.NET Core 项目启动到2016年06月.N..
2021-07-09 21:25:28 1091
原创 谈谈Dynamic的DynamicJson
传统操作Json很多.NET开发程序员或多或少都会遇到操作Json字符串的情况,一般来说,我们都是先定义一个和Json格式相匹配的类,然后将json字符串反序列化成对象,这样便于我们编程使用,由于.NET是强类型语言,Json又是多变的,非常灵活的,导致服务器端定义的json序列化类越来越多,操作也及其不便。特别是对多层嵌套的json更是头疼。此次不再过多声明,.NET程序员用过都明白。简易操作JsonDynamicJson是专门为.NET程序员开发的Json操作库,其源码非常...
2021-02-20 16:25:42 643
原创 获取ms sql存储过程的名称和信息
SELECT sp.object_id AS FUNCTION_ID, sp.name AS FUNCTION_NAME, b.name + '.' + sp.name AS SFUNCTION_NAME, b.name AS SCHEMA_NAME, ISNULL(param.name, '') AS PARAM_NAME, ISNULL(usrt.name, '') AS [DATA_TYPE], sp.type AS TYPE,.
2021-02-20 16:00:53 259
转载 ASP.NET Core 监听SQL Server数据库的实时信息
1.开发环境:开发工具:Visual Studio 2019 数据库:SQL Server2012 开发环境:.Net Core 3.12.使用技术:Signalr:实现消息推送 SqlDependency:通过它的OnChangeEventHandler事件去监听数据库的波动【只针对SQL Serer】 Microsoft.EntityFrameworkCore:连接数据库3.业务逻辑(虽然最后没做成,但是这技术我还学会了)开发场景:客户需要每一个参加展会的人,签到时候,需要在展
2021-02-20 15:56:06 540
转载 SQL Server将一列的多行内容拼接成一行字符串
示例 stuff: for xml path 参考文章示例昨天遇到一个SQL Server的问题:需要写一个储存过程来处理几个表中的数据,最后问题出在我想将一个表的一个列的多行内容拼接成一行,比如表中有两列数据 :类别 名称 AAA 企业1 AAA 企业2 AAA 企业3 BBB 企业4 BBB 企业5 我想把这个表变成如下格式:类别 名称 AAA 企业1,企业2,企业3 BBB 企业4,企业5 一
2020-11-06 10:11:57 5480
原创 C# 正则表达式
由于偶尔用正则表达式,一下子回想不起来,特意花点时间收集下。符号解释: \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,’n’ 匹配字符 "n"。’\n’ 匹配一个换行符。序列 ’\\’ 匹配 "\" 而 "\(" 则匹配 "("。 ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 ’\n’ 或 ’\r’ 之后的位置。 $ 匹配输入字符串的结束位置。如果设置了RegEx
2020-09-27 15:54:45 169
转载 ASP.NET Core学习资源汇总
ASP.NET Core入门学习资源汇总篇幅比較長,分为七个部分。 (一)认识.NET Core (二)Vistual Studio安装、调试 (三)Asp.Net Core入门指南与学习路线 (四)入门级实战项目手册、官方教程 (五)Asp.Net Core视频学习资源 (六)博客教程 (七)部署与测试 (八)开源项目推荐 (一)认识.NET Core从2014年11月.NET Core 项目启动到2016年06月.NET
2020-08-07 16:05:06 665
原创 NPOI 复制 工作表
/// <summary> /// 复制表 /// </summary> /// <param name="wb"></param> /// <param name="fromSheet"></param> /// <param name="toSheet"></param> /// <param name="copyValueFlag">&l...
2020-06-15 15:46:06 853
原创 SQL Server 行版本控制,with(nolock)
一 。什么时候可以使用WITH(NOLOCK)? 什么时候不能使用WITH(NOLOCK),这个要视你系统业务情况,综合考虑性能情况与业务要求来决定是否使用WITH(NOLOCK), 例如涉及到金融或会计成本之类的系统,出现脏读那是要产生严重问题的。关键业务系统也要慎重考虑。大体来说一般有下面一些场景可以使用WITH(NOLOCK) 1: 基础数据表,这些表的数据很少变更。 2:历史数据表,这些表的数据很少变更。 3:业务允许脏读情况出现涉及的表。 4:数据量超大的表,出于性...
2020-06-09 10:32:28 457
原创 设计模式 -- 策略模式和简单工厂实现计算器
设计模式 -- 策略模式和简单工厂的结合#####1 策略模式(Strategy)介绍和优缺点#####2 策略模式和简单工厂的结合#####3 策略模式的应用设计模式:面向对象语言开发过程中,对各种问题和场景的解决方案的沉淀, 是解决问题的套路,提出场景--解决问题--总结沉淀--推广应用行为型设计模式:关注对象和行为的分离设计模式都是为了解决一类问题而存在的,往往在解决一类问题的同时会带来的新的问题,会有对应的解决方案。设计模式不是万能的程序设计:不关系功能性,关注的非功能性的要求,程.
2020-05-20 20:12:38 590
原创 漫话消息队列
当下成熟的消息队列产品非常多,各种丰富的特性让人眼花缭乱,难以抉择。穿透现象先看本质,消息队列其实就是一个第三方应用程序,管理着一块儿内存空间,能快速存取数据,具备先进先出特性。只是跟系统架构设计相结合,产生了神奇的特效,请看下图:基于消息队列的异步架构图消息队列的好处:1---流量削峰:高并发的核心问题就是请求集中在同一时间,服务器来不及处理,而有了消息队列,就可以将请求的数据打包放入,然后由后端处理器异步处理,降低高峰期的并发处理压力,用时间换空间2---高可用性:90.
2020-05-19 19:51:26 209
原创 六.RabbitMQ消息的持久化优先级
01 消息持久化其实在前面的文章中已经介绍了exchange和queue的持久化,把exchange和queue的durable属性设置为true,重启rabbitmq服务时(重启命令:rabbitmqctl stop_app ;rabbitmqctl start_app),exchange和queue也会恢复。我们需要注意的是:如果queue设置durable=true,rabbitmq服务重启后队列虽然会存在,但是队列内的消息会丢全部丢失。那么怎么实现消息的持久化呢?实现的方法很简单:将exch..
2020-05-19 19:41:20 247
原创 五.RabbitMQ生产者/消费者消息确认
01 为什么要消息确认在一些场合,如转账、付费时每一条消息都必须保证成功的被处理。AMQP是金融级的消息队列协议,有很高的可靠性,这里介绍在使用RabbitMQ时怎么保证消息被成功处理的。消息确认可以分为两种:一种是生产者发送消息到Broke时,Broker给生产者发送确认回执,用于告诉生产者消息已被成功发送到Broker;一种是消费者接收到Broker发送的消息时,消费者给Broker发送确认回执,用于通知消息已成功被消费者接收。下边分别介绍生产者端和消费者端的消息确认方法02生产者端消.
2020-05-10 10:57:22 3531 1
原创 四. RabbitMQ路由解析
什么是路由呢?就和你们家里的路由器是一个概念,路由器就是把网络信号做转发、那么RabbitMQ中的路由,就是把消息做转发;RabbitMQ一共提供了四种路由:ØDirect类型ØFanout类型ØTopic类型ØHeader类型01Direct类型的路由:上一篇文章中写的RabbitMQ的基本应用案例中使用的Exchange就是direct类型的,direct类型的exchange路由规则很简单:exchange在和queue进行binding时会设置ro...
2020-05-10 10:54:25 958
原创 三.RabbitMQ在C#程序中初步使用
RabbitMQ应用C#程序在前面给大家说到过消息队列其实就是一个或多个进程往队列里面去写消息,然后可以有一个或者多个进程在消息队列里面获取消息进行处理:如下图根据上图展示的,应该有一个消息写入队列的进程,然后有一个进程到队列里面去获取消息进行处理;RabbitMQ在应用在C#程序,其实RabbitMQ提供的有对应的客户端程序包;我这里先准备了两个AspNetCore的控...
2020-04-29 19:39:23 976
原创 二. RabbitMQ环境准备/环境搭建
安装ERLANG OTPRabbitMQ是Erlang语言开发的,要运行RabbitMQ,就必须提供能够运行RabbitMQ的环境,必须要安装Erlang,就好比想要养鱼,就必须得有水一样。第一步:下载ErlangOTP,晚上下载路径很多,我这里提供的是最新版本的下载路径,如图4操作。注意:选择和自己电脑匹配的系统位数,老师这里是64位操作系统。下载地址:https://ww...
2020-04-29 19:32:11 386
原创 多个Newtonsoft.Json引起的版本冲突
指向一个版本,通常是高向低 <runtime><assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" culture="neutral" p...
2020-04-27 09:32:40 1358
转载 .Net Core3.1 微服务架构技术栈
微服务这个概念早在2012年就提出来了,经过了这些年的发展,现在已经成为企业非常主流的架构选项了。微服务的前世今生与微服务架构相对的,叫单体架构。这是我们最熟悉的开发方式,就是一个项目搞定业务全过程,在同一个进程里面完成。随着业务发展,数据量和并发上去了,一般会选择右边的垂直拆分,拆分后的每个系统,依旧是单体架构的。垂直拆分后,子系统都能独立做集群,承载能力大...
2020-04-12 19:24:32 6259 1
转载 一 .初识消息队列/RabbitMQ详解
1. 什么是消息队列图1:消息队列图1就是一个消息队列的使用结构图,比方说买票系统需要生成订单,不是直接就去调用订单系统,而是通过消息队列,把生成订单的数据,写入消息队列中去,然后订单系统就可以到消息队列中去订阅获取数据,再生成订单;消息队列有个特点,先进先出,先存进去的就先被取出来,取出来以后,数据在队列中被删除,消息数据在消息队列中是持久化存储的;只要是没有被取出,就会一直存...
2020-04-12 19:00:49 246
原创 IIS网站启动提示文件另在使用的解决方式
用管理员身份运行cmd命令窗口,输入netstat -aon ->d:/port80.txt(DOS中将显示结果定向到一个文件里)。然后到d盘port80.txt文件中找到占用80端口的程序pid,记 下pid。打开任务管理器,点击“查看”/选择列,勾选“PID(进程标识符)”,然后单击“进程”标签,找到80端口对应的pid,就可以看到是那个程 序占用的了,更改这个程序的port(端口),再...
2019-12-25 14:32:04 338
原创 js + kindeditor 提交内容为空的解决办法
kindeditor4.0以上版本的解决方法。1. 直接用表单的提交按钮<inputtype=”submit”value=”提交”/>可以得到值。2. 通过js的 submit()提交则为空值,解决办法就是在初始化kindeditor时加入一行代码:afterBlur:function(){this.sync();}这行代码的意思就是在textarea失去焦点之...
2019-12-05 10:08:29 537 1
转载 python3网络爬虫一《使用urllib.request发送请求》
在Python2版本中,有urllib和urlib2两个库可以用来实现request的发送。而在Python3中,已经不存在urllib2这个库了,统一为urllib。Python3 urllib库官方链接https://docs.python.org/3/library/urllib.htmlurllib中包括了四个模块,包括urllib.request,url...
2019-06-21 11:25:54 289
转载 本地项目上传到github 报错“master -> master (non-fast-forward)”
第一步:建立git仓库cd到你的本地项目根目录下,执行git命令,此命令会在当前目录下创建一个.git文件夹。git init第二步:将项目的所有文件添加到仓库中git add .这个命令会把当前路径下的所有文件,添加到待上传的文件列表中。如果想添加某个特定的文件,只需把.换成特定的文件名即可第三步:将add的文件commit到仓库git commit -...
2019-02-21 14:04:59 152
转载 Python抢票神器
又到了一年一度的抢票大战,本来就辛苦劳累了一年,想着可以早点订到票跟家里人团聚。所以,许多人宁愿多花些钱去找黄牛买票。但今年各种抢票软件的横行,还有官方出的加速包,导致连黄牛都不敢保证能买到票。你无奈的只能一起加入抢票大军。从不花钱的低速,到中速、高速、极速、光速、VIP,六种抢票速度,越快当然抢到的几率也就更高,但每升一级都需要你花 10 个加速包才能实现。而加速包的获取方式有两...
2019-01-17 16:00:00 3503 4
转载 使用HttpWebRequest和HtmlAgilityPack抓取网页(无乱码)
public string HttpGet(string url) { string responsestr = ""; HttpWebRequest req = HttpWebRequest.Create(url) as HttpWebRequest; req.Accept = "*/*"; ...
2018-11-28 13:39:26 303
转载 使用HtmlAgilityPack爬取网站信息并存储
前言:打算做一个药材价格查询的功能,但刚开始一点数据都没有靠自己找信息录入的话很麻烦的,所以只有先到其它网站抓取存到数据库再开始做这个了。HtmlAgilityPack在c#里应该很多人用吧,简单又强大。之前也用它做过几个爬取信息的小工具。不过很久了源代码都没有了,都忘了怎么用了,这次也是一点一点找资料慢慢做出来的!(不过最麻烦的是将数据存到mysql,.net数据库我一直用的都是mssq...
2018-11-22 10:03:45 250
转载 SQL日期查询-SQL查询今天、昨天、7天内、30天,年
近期程序开发中,需要对时间进行比较,此时需要用到SQL的时间查询系列功能,综合整理资料如下:今天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=0昨天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=17天内的所有数据:sel...
2018-10-23 16:36:59 1582
原创 IE11等新版本的浏览器更新 User-Agent 导致的 ASP.Net 网站无法写入Cookie 问题
一个项目里用到forms身份认证,近来突然在谷歌浏览器里以及相应的360等浏览器,不能保存COOKIE,试了很多办法,终于解决了,做个记录以备候查。web.config 里需要 增添machineKey, 如: <machineKey validationKey="88CB6CA6CF403C5FBB41C2F62BB7FCFCA05DE7BE" decryptionKey="B8A...
2018-09-25 17:41:57 496
原创 SQLserver 更新统计
SQLSERVER数据库使用时间长了以后,经常会引起阻塞。这时需要更新统计,执行exec sp_updatestats;
2018-09-05 14:03:56 447
转载 修复IIS:因ApplicationHost.config被破坏导致的崩溃
错误描述 有时候我们必须手动或用脚本修改applicationHost.config来满足我们的一些需求。这就存在破坏applicationHost.config的风险。而一旦applicationHost.config被破坏,IIS就会崩溃。即时我们后来修复了applicationHost.config中的错误并重启机器,IIS都可能无法恢复。解决方法 解决的办法是使用IIS提供的AppCmd....
2018-06-27 13:30:31 1731
转载 sql server 导出表结构
网上找到一个脚本还不错,小小的修改就满足了我的要求,执行完SQL脚本。在结果就能看到数据库所有表的结构,这个时候只要全选,然后右击出来属性框,选择将结果另存为,这个时候您只要选择导出CSV,然后新建一个Excel表格,在菜单栏选择数据,再选择自文本,后面的大家可以自己的需求自行处理了。SELECT 表名 = Case When A.colorder=1 Then D.name...
2018-06-27 12:35:16 555
转载 动态调用WebService(C#)
通常我们在程序中需要调用WebService时,都是通过“添加Web引用”,让VS.NET环境来为我们生成服务代理,然后调用对应的Web服务。这样是使工作简单了,但是却和提供Web服务的URL、方法名、参数绑定在一起了,这是VS.NET自动为我们生成Web服务代理的限制。如果哪一天发布Web服务的URL改变了,则我们需要重新让VS.NET生成代理,并重新编译。在某些情况下,这可能是不能忍受的,...
2017-11-07 14:46:54 287
原创 服务器无法继续执行该事务,此会话中的活动事务已由另外一个会话提交或终止。
//执行事务处理public void DoTran(){ //建立连接并打开 SqlConnection myConn=GetConn(); myConn.Open(); SqlCommand myComm=new SqlCommand(); //SqlTransaction myTran=new SqlTransaction(); //注意,SqlTransaction类无公开
2017-07-04 11:16:02 4144
转载 c# 将IDataReader转换为DataTable
/// /// 将IDataReader转换为DataTable /// /// /// public static DataTable DataTableToIDataReader(IDataReader reader) { DataTable objDataTable = new DataTable("Table");
2017-06-30 10:51:06 5667
Jquery通过滚动条加载图片
2012-05-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人