SQL Server中关联多表、带有聚合函数的更新(Update)语句

最近忙于公司产品和项目,很有没有写博客了,碰巧今天遇上一个问题,纠结了比较久,在网上搜索了一些资料最终得出解决方案。业务场景如下:考生表tblUser:标识列(Id)姓名(Name)总分(TotalScore)1张三NULL2李四NULL3王五NULL得分表tblScore:考生标识列(UserId)姓名(Name)科目(Subject)得分(Score)1张三数学861张三语文992李四数学982李四语文853王五数学593王五语文51我们需要使用SUM()和GROUP把附表B中的总分累加起来,赋值给主表A中的总分。1. 先查询考生表中的数据,遍历所有考生,将考生总分查询出来,单条更新到考生表中。此方法执行效率很低下,遍...


阅读正文

QQ第三方登录(JS版)

腾讯官方提供的QQ互联中有多种QQ登录的接口,在网页上如果我们需要QQ登录功能,可以选用JS-SDK,看根据QQ互联官方提供的页面,生成JS代码,页面地址如下:http://connect.qq.com/intro/login/jssdk 在这里生成JS代码:点击按钮之后页面将弹开QQ登录的界面,在QQ登录界面上完成登录之后,页面将跳转到我们的回调地址上,可在回调页面上获取QQ用户的OpenId。下面给一段代码实例:<script type="text/javascript" src="http://qzonestyle.gtimg.cn/qzone/openapi/qc_loader.js" data-appid="腾讯互联提供的AppId" data-...


阅读正文

SQL Server还原数据库的SQL语句,可用于定时作业中定时还原数据库

USE master --设置数据库离线后再在线,避免数据库正在使用占用进程 ALTER DATABASE [数据库名] SET OFFLINE WITH ROLLBACK IMMEDIATE ALTER DATABASE [数据库名] SET ONLINE --开始恢复 RESTORE DATABASE [数据库名] FROM DISK='D:\还原文件\数据库\备份文件名.bak' WITH REPLACE --覆盖还原 --授权用户 ALTER AUTHORIZATION ON DATABASE::[数据库名] TO [数据库用户名]以下是《SQL Server备份数据库的SQL语句,可用于定时作业中定时备份数据库》


阅读正文

NT Kernel & System (ntoskrnl.exe)占用端口

1.在CMD命令窗口中运行 netstat -ano 发现端口被pid为4的进程占用2.打开任务管理器,发现pid为4的进程,其实是system进程,映像路径名称是ntoskrnl.exe,其对应的进程描述是NT kernel & system,并且此进程无法通过右键结束3.打开注册表(开始 > 运行regedit)4.找到HKEY_LOCAL_MACHINE > System > CurrentControlSet > Services > HTTP 将右侧的Start值由3改为4,确定5.重启,就解除了ntoskrnl.exe NT Kernel & System占用的端口


阅读正文

解决发布Web应用时报错:指定的路径或文件名太长,或者两者都太长。完全限定文件名必须少...

1.在VS中发布Web应用,进行发布相关的设置后,在发布过程中出现如下截图的错误信息2.查看错误输出信息后发现,在发布过程中,VS会在系统临时目录中创建文件进行预编译,并将预编译后的文件存储于另一个目录。猜测可能是目录名的问题3.在发布的网站根目录中找到*.publishproj文件,在<PropertyGroup>节点内添加<IntermediateOutputPath>..\Temp</IntermediateOutputPath>,将可以设置发布过程中的临时文件存放目录,这里设置的..\Temp将会在项目目录中自动创建一个Temp文件夹,如下图所示是在发布过程中Temp文件夹下自动创建的文件...


阅读正文

URL地址太长,“请求筛选模块被配置为拒绝包含的查询字符串过长的请求”错误处理办法

当页面地址的URL参数太长,网页会报出以下错误: 根据报错页面的提醒,我们可以通过修改web.config解决URL参数过长的问题,在web.config的<system.webServer>中修改以下节点(如果没有节点则添加): <security> <requestFiltering> <requestLimits maxQueryString="40000"></requestLimits> </requestFiltering> </security> maxQueryString默认值是2018,此处将数值改大一点即可!


阅读正文

SQL Server执行大脚本时提示“内存不足,没有足够的内存继续执行程序”时,使用osql执行大...

在SQL Server中运行大容量脚本,系统提示“内存不足,没有足够的内存继续执行程序”,该如何解决呢?1. 提示如图:2.通过osql命令行来执行大脚本sql文件,命令如下:osql -S 数据库连接地址 -U 数据库用户名 -P 密码 -i D:\脚本文件.sql以上命令即可运行脚本了,如果要记录运行过程中的脚本执行日志,则可以使用-o参数来保存执行日志,如下:osql -S 数据库连接地址 -U 数据库用户名 -P 密码 -i D:\脚本文件.sql -o D:\执行日志文件.txt3.osql的其它参数如下,可供参考:


阅读正文