小编CSh*_*per的帖子

如何在SQL Server中更新包含数百万行的大表?

我的UPDATE声明可以更新超过百万条记录.我想分批更新1000或10000.我试过@@ROWCOUNT但我无法得到理想的结果.

仅仅为了测试目的我做了什么,我选择了包含14条记录的表并将行数设置为5.此查询应该更新5,5和4中的记录,但它只更新前5条记录.

查询 - 1:

SET ROWCOUNT 5

UPDATE TableName 
SET Value = 'abc1' 
WHERE Parameter1 = 'abc' AND Parameter2 = 123

WHILE @@ROWCOUNT > 0
BEGIN
    SET rowcount 5

    UPDATE TableName 
    SET Value = 'abc1' 
    WHERE Parameter1 = 'abc' AND Parameter2 = 123

    PRINT (@@ROWCOUNT)
END

SET rowcount 0
Run Code Online (Sandbox Code Playgroud)

查询 - 2:

SET ROWCOUNT  5

WHILE (@@ROWCOUNT > 0)
BEGIN
    BEGIN TRANSACTION

    UPDATE TableName 
    SET Value = 'abc1' 
    WHERE Parameter1 = 'abc' AND Parameter2 = …
Run Code Online (Sandbox Code Playgroud)

sql-server

19
推荐指数
5
解决办法
6万
查看次数

在 C# 中获取特定时区的日期时间时出现 System.TimeZoneNotFoundException 错误

我有一个带有time_zone参数的 JSON 文件。它具有诸如等值London, Casablanca, Arizona, Pacific Time (US & Canada)。基于time_zone,我想获得该DateTime时区的结果。

例如,

Current time = 8/3/2015 4:00:00 PM

If time_zone = Central Time (US & Canada) then result should be 8/3/2015 3:00:00 PM,

If time_zone = Pacific Time (US & Canada) then result should be 8/3/2015 1:00:00 PM,

If time_zone = London then result should be 8/3/2015 9:00:00 PM 等等。

我想显示当前时间以及每个给定时区的时间。

我尝试了以下方法来为受尊重的时区争取时间,但它引发了错误。

代码:作品

 DateTime timeUtc = DateTime.Now;
 TimeZoneInfo cstZone = TimeZoneInfo.FindSystemTimeZoneById("Central Standard Time"); …
Run Code Online (Sandbox Code Playgroud)

c# timezone

16
推荐指数
3
解决办法
3万
查看次数

是否可以在 GitKraken 中查看文件历史记录的日期时间?

GitKraken用作 Git 客户端。在这里,我看到的是,在文件历史记录它显示1 hour agoyesterday4 days ago等。有没有办法让我看到日期时间?我可以在sourceTree.

海妖在此处输入图片说明

源树在此处输入图片说明

gitkraken

9
推荐指数
1
解决办法
672
查看次数

清理旧 lambda 版本的最佳方法是什么?

我在 CFN 模板中启用了 lambda 版本。随着时间的推移,我看到版本在增加,现在它消耗了AWS分配的代码存储空间。

我想知道删除旧版本的最佳方法是什么。即我只想保留当前版本和之前的版本,其余所有版本都应删除。

选项1:

选项2(不确定这是否可行)

  • CFN解决方案
    • 即我使用AutoPublishAlias属性来启用 lambda 版本,如下所示。有没有办法限制模板本身的版本?
  Type: AWS::Serverless::Function
  Properties:
    AutoPublishAlias: $LATEST
    Handler: yourHandler.handler
    FunctionName: !Sub "YOUR-FUNCTION-NAME"
    CodeUri: dist
    Events:
      healthGet:
        Type: Api
        Properties:
          Path: /YOUR-FUNCTION-NAME
          Method: GET
Run Code Online (Sandbox Code Playgroud)

aws-lambda

9
推荐指数
1
解决办法
2714
查看次数

Windows 10上的Silverlight 5.0调试问题

我最近将操作系统升级到了Windows 10.我有一个非常基本的Silverlight 5应用程序,当我尝试运行项目时,它会给我Unable to start Debugging. The Silverlight Developer Runtime Not Installed. Please Installed a matching version错误VS 2010.

我有 :

  1. 目标Silverlight版本Silverlight 5在Web项目中设置为.
  2. 我已经安装了Silverlight SDK,Silverlight5_Tools with SP1 installed&Silverlight Runtime这是64-bit.

完成所有这些步骤并浏览了许多在线帖子后,我仍然无法解决此问题.

我怀疑是:

  1. 执行Windows 10升级有什么这种情况呢?
  2. Windows 10附带一个新的浏览器Edge,这是因为这个浏览器?像Silverlight兼容性一样.

我不确定,但这些是我的怀疑.有什么建议?

visual-studio-2010 silverlight-5.0 windows-10

6
推荐指数
3
解决办法
7451
查看次数

在 C# 中使用 LINQ 从实体框架中的大表获取 .Count 的最快方法

我正在使用Entity FrameworkLINQ。我有一个大约有 50 万条记录的表,我想得到.Count()一个表。最好的方法是什么?

我已经尝试过这个:

// Without WHERE condition. Execution Time = 5864 miliseconds
var count = context.MyTable
                   .AsNoTracking()
                   .Count();

// With WHERE condition. Execution Time = 9825 miliseconds
var count = context.MyTable
                   .AsNoTracking()
                   .Count(x => !x.IsDeleted && (x.Column.Contains(keyword) || x.Column2.Contains(keyword) || x.Column3.Contains(keyword))); 
Run Code Online (Sandbox Code Playgroud)

有没有其他方法或方法来改进这个查询?

c# linq entity-framework

5
推荐指数
0
解决办法
1619
查看次数

无法加载文件或程序集“Microsoft.SqlServer.Types, Version=10.0.0.0”或其依赖项之一

最近我开始使用 SSMS 2017 (v17.5)。在我的 MVC 应用程序中,Could not load file or assembly 'Microsoft.SqlServer.Types, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies.出现错误。我的应用程序中唯一改变的Microsoft.SqlServer.Types14.0.0.0现在的版本。以前,它是12.0.0.0.

以下是我迄今为止根据我的研究尝试过的不同选项(这包括另stackoverflow一篇文章 + 谷歌),但我遇到了同样的错误。

  1. 添加<dependentAssembly>app.config

    <dependentAssembly> <assemblyIdentity name="Microsoft.SqlServer.Types" publicKeyToken="89845dcd8080cc91" culture="neutral" /> <bindingRedirect oldVersion="10.0.0.0-11.0.0.0" newVersion="14.0.0.0" /> </dependentAssembly>

  2. Global.asax.csApplication_Start方法中添加以下行。

    SqlProviderServices.SqlServerTypesAssemblyName = "Microsoft.SqlServer.Types, Version=14.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91";

  3. 安装Microsoft.SqlServer.Types使用NuGet.

    PM> Install-Package Microsoft.SqlServer.Types

  4. 10.0.0.0在整个项目中搜索参考,但没有找到任何参考。

  5. 我确实Microsoft System CLR Types for SQL Server安装了2012, 2014, 2016 …

c# sql-server

5
推荐指数
1
解决办法
7366
查看次数

SHA256 在 Python 与 TypeScript 中散列正文和 base64 编码

我的目标是散列正文SHA256,然后用base64. 我正在将python代码转换为TypeScript.

基于谷歌搜索,据我所知,crypto可以用于hashlibbase64。这里的挑战是,当我使用.createHmacthen 它需要secret在 python 中的时候我可以直接使用 body。这是实现python结果的另一种方式typeScript吗?

注意:这是我第一次看到 python 代码,所以如果我在这里遗漏了什么,请纠正我。

蟒蛇代码:

import hashlib
import base64

body = "johnDoe"
abc =  base64.b64encode(hashlib.sha256(body.encode('utf-8')).digest())
print(abc)
Run Code Online (Sandbox Code Playgroud)

输出:

b'RnuqbBqTNwQ7v3g3tKsVAi+NUALBCUeoRBEq6Yil6RA='
Run Code Online (Sandbox Code Playgroud)

这可以在这里验证。

打字稿代码:使用createHmac

var crypto = require('crypto');

var secret = "PYPd1Hv4J6";
var body = "johnDoe";

var hmac = crypto.createHmac("sha256",secret);
var hmac_result = hmac.update(body).digest('base64');
console.log(hmac_result);
Run Code Online (Sandbox Code Playgroud)

输出:

DLZdA1/ULIIECiJ4t+HYDLE+FRPIfcFQNo7Uw/csopU=
Run Code Online (Sandbox Code Playgroud)

这可以在这里验证。

python hmac typescript

5
推荐指数
1
解决办法
4109
查看次数

如何使用brew安装多个dotnet版本?

我正在尝试在我的 Mac(M1 芯片)上安装 .NET 6 和 7,在尝试了多种方法之后,我无处可去。

选项 1:使用brew

  • 安装了.NET 7。到这里,我看到下安装成功了,/opt/homebrew/Cellar/dotnet/7.0.100就好了。
  • 安装了.NET 6。这是安装在/opt/homebrew/Cellar/dotnet@6/6.0.114

当我跑步dotnet --list-runtimes时,我只看到7.0.0

Microsoft.AspNetCore.App 7.0.0 [/opt/homebrew/Cellar/dotnet/7.0.100/libexec/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 7.0.0 [/opt/homebrew/Cellar/dotnet/7.0.100/libexec/shared/Microsoft.NETCore.App]
Run Code Online (Sandbox Code Playgroud)

我知道brew命令创建了dotnet@6.

我怎样才能做到这一点.NET 7以免遇到You must install or update .NET to run this application.错误?

选项 2:使用Install-scripts.

chmod +x dotnet-install.sh
sudo ./dotnet-install.sh --runtime dotnet --version 6.0.20 --install-dir /opt/homebrew/Cellar/dotnet 
sudo ./dotnet-install.sh --runtime …
Run Code Online (Sandbox Code Playgroud)

c# macos homebrew dotnet-cli

5
推荐指数
2
解决办法
4499
查看次数

检查列是否为 NULL 或表中包含 NULL。- 微软SQL服务器

下面是我的表在(TestTable)哪里。Column_3NULL

Column_1 Column_2 Column_3
-------- -------- --------
1        2        NULL
1        3        NULL
5        6        NULL
Run Code Online (Sandbox Code Playgroud)

根据功能,用户可以选择一个或多个columns。例如,如果用户选择Column_3 & Column_2where Column_3is NULL。我想告诉用户的Column_3NULL

查询:适用于单列

if exists(select * from TestTable where Column_3 is null)
    print 'Yes'
else
    print 'No'
Run Code Online (Sandbox Code Playgroud)

结果 :

Yes
Run Code Online (Sandbox Code Playgroud)

查询:对于多个列(不起作用)

declare @columns nvarchar(max), @tableName nvarchar(max), @query nvarchar(max)

set @columns = 'Column_3, Column_2'
set @tableName = 'TestTable'
set @query = 'select * from (select ' + @columns …
Run Code Online (Sandbox Code Playgroud)

sql-server

4
推荐指数
1
解决办法
2万
查看次数