随笔- 672
文章- 2
评论- 325
阅读-
281万
04 2019 档案
在英文Windows操作系统上使用SQL Server Management Studio(SSMS)导入Excel 97-2003文件时报错:Failure creating file
摘要:今天在公司服务器上使用SQL Server Management Studio(SSMS)导入Excel 97-2003文件(.xls)时报错: 错误截图: 这个报错的原因,是因为我们使用的是英文版Windows操作系统,但是我们的Excel文件(.xls)是放在一个中文路径下的: 后来我们将这个E
阅读全文
使用exec和sp_executesql动态执行SQL语句(转载)
摘要:当需要根据外部输入的参数来决定要执行的SQL语句时,常常需要动态来构造SQL查询语句,个人觉得用得比较多的地方就是分页存储过程和执行搜索查询的SQL语句。一个比较通用的分页存储过程,可能需要传入表名,字段,过滤条件,排序等参数,而对于搜索的话,可能要根据搜索条件判断来动态执行SQL语句。 在SQL
阅读全文
FileMode文件模式(转载)
摘要:FileMode指定操作系统打开文件的方式。 若存在文件,则打开该文件并查找到文件尾,或者创建一个新文件。 这需要 Append 权限。 FileMode.Append 只能与 FileAccess.Write 一起使用。 试图查找文件尾之前的位置时会引发 IOException 异常,并且任何试图
阅读全文
SQL Server的JOIN是支持使用小括号修改执行顺序的
摘要:假如现在我们的SQL Server数据库中有三个表:[T_A]、[T_B]和[T_C],它们的建表语句如下: [T_A]、[T_B]和[T_C]每个表都只有一个INT类型的列,我们使用下面的语句给这三个表插入数据: 我们都知道默认情况下,SQL Server中的JOIN语句都是按表出现的顺序执行的,
阅读全文
System.Threading.Timer如何正确地被Dispose
摘要:System.Threading.Timer是.NET中一个定时触发事件处理方法的类(本文后面简称Timer),它背后依靠的是.NET的线程池(ThreadPool),所以当Timer在短时间内触发了过多的事件处理方法后,可能会造成事件处理方法在线程池(ThreadPool)中排队,可以参考这篇文章
阅读全文
Git以一个远程分支为基础新建一个远程分支(转载)
摘要:例如现在有两个分支,master和develop git checkout master //进入master分支git checkout -b frommaster //以master为源创建分支frommaster git checkout develop //进入develop分支git ch
阅读全文
SQL Server中NULL的一个测试
摘要:我们都知道SQL Server中NULL是一个很特殊的存在,因为NULL不会等于任何值,且NULL也不会不等于任何值。对于NULL我们只能使用IS或IS NOT关键字来进行比较。 我们先来看看下面一个SQL查询,由于NULL不会等于任何值,所以毫无疑问下面的查询会返回0: 输出结果: 那么如果我们在
阅读全文
C#中指针使用总结(转载)
摘要:C#为了类型安全,默认并不支持指针。但是也并不是说C#不支持指针,我们可以使用unsafe关键词,开启不安全代码(unsafe code)开发模式。在不安全模式下,我们可以直接操作内存,这样就可以使用指针了。在不安全模式下,CLR并不检测unsafe代码的安全,而是直接执行代码。unsafe代码的安
阅读全文
System.IO在不存在的路径下创建文件夹和文件的测试
摘要:本文测试System.IO命名空间下的类,在不存在的路径下创建文件夹和文件的效果: 首先测试创建文件夹: 上面代码中如果文件夹"C:\A"不存在,那么Directory.CreateDirectory方法也不会报错,Directory.CreateDirectory方法会先创建"C:\A"文件夹,再
阅读全文
SQL SERVER数据库修改是否区分大小写(转载)
摘要:昨天去客户,发现程序无法应用,跟踪错误提示,提示的大致意思是“数据库表名和数据库字段名不存在”。查询后发现是SQL Server数据库设置了区分大小写的缘故(一般安装时,Oracle的正确安装下是默认转换为大写;SQL Server数据库是不转换为大写,但是使用时并不区分大小写): 下面语句是设置S
阅读全文
C#中的Finalize,Dispose,SuppressFinalize(转载)
摘要:MSDN建议按照下面的模式实现IDisposable接口: public class Foo : IDisposable { public void Dispose() { Dispose(true); GC.SuppressFinalize(this); } protected virtual v
阅读全文
Sqlserver内存管理:限制最大占用内存(转载)
摘要:一、Sqlserver对系统内存的管理原则是:按需分配,且贪婪(用完不还)。它不会自动释放内存,因此执行结果集大的sql语句时,数据取出后,会一直占用内存,直到占满机器内存(并不会撑满,还是有个最大限制,比机器内存稍小),在重启服务前,sqlserver不会释放该内存,也没有任何办法可人为释放。以下
阅读全文
SQL Server连接查询之Cross Apply和Outer Apply的区别及用法(转载)
摘要:先简单了解下cross apply的语法以及会产生什么样的结果集吧!示例表: 两张表直接连接,不需要任何的关联条件,产生的结果就是这两张表的笛卡尔积 相当于:select * from tableA,tableB与之对应的还有Outer Apply,下面讲解一下Cross Apply 和 Outer
阅读全文
SQL Server中UPDATE和DELETE语句结合INNER/LEFT/RIGHT/FULL JOIN的用法
摘要:在SQL Server中,UPDATE和DELETE语句是可以结合INNER/LEFT/RIGHT/FULL JOIN来使用的。 我们首先在数据库中新建两张表: [T_A] CREATE TABLE [dbo].[T_A]( [ID] [int] NOT NULL, [Name] [nvarchar
阅读全文
在ASP.NET Core MVC中子类Controller拦截器要先于父类Controller拦截器执行
摘要:我们知道在ASP.NET Core MVC中Controller上的Filter拦截器是有执行顺序的,那么如果我们在有继承关系的两个Controller类上,声明同一种类型的Filter拦截器,那么是父Controller类的Filter拦截器先执行呢,还是子Controller类的Filter拦截
阅读全文