小编Pra*_*eep的帖子

Regex.IsMatch vs string.Contains

这两个等效表达式的速度/内存使用有什么不同:

Regex.IsMatch(Message, "1000")
Run Code Online (Sandbox Code Playgroud)

VS

Message.Contains("1000")
Run Code Online (Sandbox Code Playgroud)

任何一个比其他更好的情况?

这个问题的上下文如下:我正在对包含Regex表达式的遗留代码进行一些更改,以查找字符串是否包含在另一个字符串中.作为遗留代码,我没有对此进行任何更改,在代码审查中有人建议Regex.IsMatch应该替换为string.Contains.所以我想知道改变是否值得.

.net regex string

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

仅当总计数小于阈值时,才将行插入SQL Server表

我正在使用SQL Server 2012.

我有用于存储用户的表.允许的最大用户数为100万.我有一个我正在注册用户的sproc.当我插入时,我想确保users表中的总行数不超过100万.我宁愿使用允许最大并发性的方法.

我相信我可以使用具有SERIALIZABLE的ISOLATION LEVEL的事务,然后首先计算行数并在总计数小于1百万时插入.我的理解是SERIALIZABLE是非常严格的,并且随着并发性的增加会导致性能下降.

IF(SELECT COUNT(*) FROM Users) < 100000
BEGIN
    INSERT INTO Users VALUES (@Name, @Email, @Password)
END
Run Code Online (Sandbox Code Playgroud)

如何以原子方式执行此操作以确保总行数小于100万,但同时我执行最小锁定以防止阻止其他事务?

这种情况的任何解决方案/最佳实践?

sql t-sql sql-server

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

标签 统计

.net ×1

regex ×1

sql ×1

sql-server ×1

string ×1

t-sql ×1