你认为一个人对另一个人的好处是什么?据我所知,这只是偏好.我对使用C#的方式比使用Visual Basic更有经验,并且想知道我是否应该在Visual Basic中涉及某些类型的项目?
我有5个数据库,代表该国的不同地区.在每个数据库中,有几百个表,每个表有10,000-2,000,000个事务记录.每个表都是相应区域中客户的表示.这些表中的每一个都具有相同的模式.
我想查询所有表,就像它们是一个表一样.我能想到的唯一方法是创建一个联合所有表的视图,然后只针对它运行我的查询.但是,客户表将一直在变化(因为我们获得和失去客户),因此我必须更改我的视图的查询以包括新表(或删除不再使用的表).
有没有更好的办法?
在回应评论时,(我也将此作为对答案的回复):
在大多数情况下,我不会删除任何表格,它们将保留用于历史目的.正如我在一篇回复中发表评论时,其想法是减少较小客户(一个只有10,000条记录)的时间来查询自己的历史记录.大约有1000个客户平均有1,000,000行(并且正在增长).如果我要将所有记录添加到一个表中,那么该表中将有近十亿条记录.我还以为我正在计划未来,因为当我们说5000个客户时,我们没有一个巨大的表来保存所有交易记录(这可能是我的想法中的错误).那么,最好不要像我一样划分记录吗?我应该将它们全部混合到一张桌子里吗?对客户ID进行索引是否可以防止向小客户查询数据的延迟?
我有一个SQL表,其日期字段定义为char(8)或20090609,时间字段定义为char(4)或1230.我将此数据移动到另一个表中,我想将两个字段组合在一起将它们放在新表中的smalldatetime字段中.我的查询是这样的:
INSERT NewTable(eventdate)
SELECT
CAST((datecol + ' ' + substring(timecol, 1, 2) + ':' + substring(timecol, 3, 2)) as smalldatetime)
FROM OldTable
Run Code Online (Sandbox Code Playgroud)
当我运行它时,我收到一个错误:
将char数据类型转换为smalldatetime数据类型会导致超出范围的smalldatetime值.
我已经尝试检查len(datecol)和len(timecol)以确保它们至少是正确的字符数.我不知道如何找到有问题的数据,有什么建议吗?数据库是SQL2000,我正在使用SMO 2008.
我有一些非常慢的代码.我知道它会是,现在是.基本上,我正在从一堆目录中读取文件.文件名会更改,但数据不会更改.为了确定我是否已经读取了该文件,我正在对其字节进行哈希并将其与已处理文件的哈希列表进行比较.每个目录中大约有1000个文件,并且确定每个目录中的新内容需要大约一分钟左右(然后处理开始).这是基本代码:
public static class ProgramExtensions
{
public static byte[] ToSHA256Hash(this FileInfo file)
{
using (FileStream fs = new FileStream(file.FullName, FileMode.Open))
{
using (SHA256 hasher = new SHA256Managed())
{
return hasher.ComputeHash(fs);
}
}
}
public static string ToHexString(this byte[] p)
{
char[] c = new char[p.Length * 2 + 2];
byte b;
c[0] = '0'; c[1] = 'x';
for (int y = 0, x = 2; y < p.Length; ++y, ++x)
{
b = ((byte)(p[y] >> 4));
c[x] = (char)(b > …Run Code Online (Sandbox Code Playgroud) 我正在使用正则表达式用更简单的模式替换特定模式.
我需要从两个括号中取出所有字符,空格,并在捕获组中使用它们.但是,括号之间的字符也可能是括号.
以下是我想要匹配的两个例子:
.message("vel pharetra est urna eget justo. Nunc in dignissim velit. {} "
+ error.getMessage().getProperty())
.build().log();
.message("Key : " + oldEntry.getKey() + " and Value: " + oldEntry.getValue())
.build()
.log();
Run Code Online (Sandbox Code Playgroud)
我现在的正则表达式: \.message\(([\S\s]+?)\)[\S\s]*?((\.log\(\))|(\.build\(\)))\;
当消息中没有括号时,它匹配简单模式.但是当有括号时,它会在第一个右括号处停止捕获组.我确定这是因为我正在使用,+?但我不确定如何指定搜索应该继续.
我用几个例子创建了这个regexr.http://regexr.com/3h15u
我已经在C#2.0 WinForms编程了一段时间了.我开始涉足ASP.NET和新的MVC框架以及C#3.5的新功能.我只阅读了一些LINQ to SQL,但已经制作了一些测试应用程序来试用它.在我的WinForms应用程序中,我通常有某种数据访问层,并自己编写了所有SQL.当然,如果有什么东西可以为我做那个CRUD,我就是为了它.
我按照www.asp.net/mvc网站上的教程进行了操作,并完成了Entity Framework示例和LINQ to SQL示例.到目前为止,它们看起来非常相似.LINQ感觉更像SQL,但实体框架更像是C#.
我的问题是:
假设我想用二进制计算,直到我有一个设定的字节数最高的数字,我怎么能这样做?感觉应该有一个非常简单的方式,我只是不知道它.我用谷歌搜索,但很惊讶没有找到任何例子.
例如,如果我想要计数到1个字节,我将从00000001开始添加1并获得00000010,添加1以获得00000011等,直到我到达11111111.
另外,你怎么能用十六进制呢?你从0x00开始,加一个输出0x01,0x02,0x03等,直到你到达0xFF?
另外,如何将值输出为字符串(如我的示例)?
一些伪代码:
byteSize = 3
counter = 0
while counter.size <= byteSize
print counter /* prints 00000001, 00000010, etc.
count += 1
loop
Run Code Online (Sandbox Code Playgroud)
我不仅关心在另一个基地显示一个数字,这只是其中的一部分.我看到我的错误,因为显示功能决定了数字的显示方式(正如Jeremy指出的那样).所以,这部分不是问题.
我保证我不是一个完整的白痴.以下是上下文:
它开始于今天我在reddit上阅读:http: //www.elliottkember.com/kember_identity.html
然后,这个:http: //www.reddit.com/r/programming/comments/8iguu/md5_gamechallenge_for_you_reddit/
这导致了这个:http: //www.olegkikin.com/md5game/
所以,我认为你可以从不同的时间间隔开始计算比特,然后让我们运行.
我有一个像这样定义的联合:
typedef union {
enum {
REVISION = 0,
CURRENT_VERSION = REVISION
};
enum FLAGS{
FLAG_DEFAULT = 0x00000000,
FLAG_EOD = 0x00000001,
FLAG_OUTOFORDER = 0x00000002
};
CHAR _filler[32];
struct INTERNAL_STRUCTURE {
UINT16 type;
UINT16 flags;
};
}CORRHDR
Run Code Online (Sandbox Code Playgroud)
如何从我的代码访问INTERNAL_STRUCTURE的成员?
我以为我可以这样做:
CORRHDR hdr;
hdr.INTERNAL_STRUCTURE.type = 1;
Run Code Online (Sandbox Code Playgroud)
我错了.我可以看到联盟中的枚举,但没有别的.有人可以向我解释这种类型的结构(或好处)吗?
假设我是Member我不想包含的名称的实体和名单.
var excludeNames = new [] { "A","B","C","D"};
var members = db.Members.Except(excludeNames);
Run Code Online (Sandbox Code Playgroud)
要么
var excludeNames = new[]{ "A","B","C","D"};
var Members = db.Members.Where(m=> excludeNames.Where(xcl => xcl != m.Name));
Run Code Online (Sandbox Code Playgroud)
这些都不起作用.我也试过这个:
var excludeNames = new[] { "A","B","C","D"};
var members = from m in db.Members
from xcl in excludeNames
where m.Name != xcl
select m;
Run Code Online (Sandbox Code Playgroud) 有时,我只是通过索引查看RavenDB工作室中的数据,我想知道是否有办法指定排序选项?
例如,如果我有这样的简单索引:
from doc in docs.Pages
select new
{
Query = new[] { page.Text, page.Views },
page,
Views = page.Views
}
Run Code Online (Sandbox Code Playgroud)
如果我想查看stackoverflow大多数视图排序的文本中的所有页面,我将如何在RavenDB Studio中查询?
c# ×4
sql ×2
.net ×1
asp.net-mvc ×1
binary ×1
bytearray ×1
c++ ×1
comparison ×1
java ×1
linq ×1
linq-to-sql ×1
ravendb ×1
regex ×1
sql-server ×1
struct ×1
t-sql ×1
unions ×1
vb.net ×1