小编Mic*_*orn的帖子

如何使用SSIS将大型平面文件加载到数据库表中?

我不确定它是如何工作的所以我正在寻找合适的解决方案.我认为SSIS是正确的方法,但我以前从未使用过它

场景:

每天早上,我都会得到一个带有800K记录的制表符分隔文件.我需要将它加载到我的数据库中:

  1. 从ftp或本地获取文件
  2. 首先,我需要从数据库中删除新文件中不存在的那个;
    • 如何比较tsql中的数据
    • 我应该在哪里加载来自制表符分隔文件的数据,以便将其与文件进行比较?我应该使用临时表吗?ItemID是表中的唯一列.
  3. 其次,我只需要将新记录插入数据库.
  4. 当然,它应该是自动化的.
  5. 它应该是有效的方法,而不会过热SQL数据库

不要忘记该文件包含800K记录.

样本平面文件数据:

ID  ItemID  ItemName  ItemType
--  ------  --------  --------
 1  2345    Apple     Fruit
 2  4578    Banana    Fruit
Run Code Online (Sandbox Code Playgroud)

我该如何处理这个问题?

ssis sql-server-2008

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

使用Linq to Entity删除多行的有效方法?

嗨,我正在寻找一次删除多个记录的有效方法.我正在删除400条记录,需要8-15秒.这是我的代码

using (var entities = new Entity())
   {                               
       foreach (Item item in entities.Items.Where(x => x.id == id))
              entities.DeleteObject(item);
       entities.SaveChanges();
   }
Run Code Online (Sandbox Code Playgroud)

c# linq-to-entities

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

如何创建t-sql来加载下n个记录?

我需要一个创建t-sql查询的示例来加载接下来的10条记录(取决于网格中的默认行数).

同样的linq必须跳过行.

因此,例如我有100K的结果,我需要在100和110记录之间加载10,依此类推.这个想法是让它的页面加载速度非常快

我还需要为我的网格构建分页,所以我需要知道总共有多少条记录

c# sql t-sql sql-server pagination

7
推荐指数
1
解决办法
3489
查看次数

我需要在select语句中拆分字符串并插入表

我在一个表中有一个数据.我需要将它复制到另一个表.其中一列是文本分隔的字符串.所以我正在考虑选择所有列插入get indentity值,并使用子查询基于分隔符进行拆分并将其插入另一个表.

这是数据示例

ID     Name     City       Items
1      Michael  Miami      item|item2|item3|item4|item5
2      Jorge    Hallandale item|item2|item3|item4|item5
Run Code Online (Sandbox Code Playgroud)

将" 名称"," 城市"复制到一个表获取标识并将项目拆分并复制到另一个具有"标识列值"的表

所以输出应该是

用户表

UserID Name     City
1      Michael  Miami
2      Jorge    Hallandale
Run Code Online (Sandbox Code Playgroud)

...

Items table

ItemID   UserID   Name
1        1        Item
2        1        Item2
3        1        Item3
4        1        Item4
5        2        Item
6        2        Item2
7        2        Item3
8        2        Item4
Run Code Online (Sandbox Code Playgroud)

不确定如何用T-SQL做到这一点.将举例说明答案

sql t-sql

6
推荐指数
1
解决办法
3752
查看次数

如何调试崩溃的转储文件?

我在我的Windows Server 2008上运行Debug Diagnostic工具.它创建了转储文件.因为我的asp.net应用程序提供了一个例外的时间.

我需要一步一步的说明如何调试转储文件.我需要在生产服务器或本地调试吗?我需要什么?如何配置?

如何确定应用程序在哪里出现问题?

有没有其他方法如何阅读转储文件?

这篇帖子我发现它对转储文件有很好的解释,但它们没有解释调试部分

http://blogs.msdn.com/b/tess/archive/2009/03/20/debugging-a-net-crash-with-rules-in-debug-diag.aspx

c# asp.net iis iis-7

6
推荐指数
1
解决办法
6700
查看次数

有效的方式来读取大型制表符分隔的txt文件?

我有一个带有500K记录的制表符分隔的txt文件.我正在使用下面的代码将数据读取到数据集.使用50K它工作正常,但500K它给出了"类型'System.OutOfMemoryException'的异常被抛出."

读取大型制表符分隔数据的更有效方法是什么?或者如何解决这个问题?请举个例子

public DataSet DataToDataSet(string fullpath, string file)
{
    string sql = "SELECT * FROM " + file; // Read all the data
    OleDbConnection connection = new OleDbConnection // Connection
                  ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fullpath + ";"
                   + "Extended Properties=\"text;HDR=YES;FMT=Delimited\"");
    OleDbDataAdapter ole = new OleDbDataAdapter(sql, connection); // Load the data into the adapter
    DataSet dataset = new DataSet(); // To hold the data
    ole.Fill(dataset); // Fill the dataset with the data from the adapter
    connection.Close(); // Close the connection
    connection.Dispose(); // …
Run Code Online (Sandbox Code Playgroud)

c# file-io tab-delimited

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

如何为不同时区的用户在正确的时间发送提醒?

我从未创建过提醒应用程序.我就是这样看的.如果我的方式正确,请告诉我.

所以我有来自不同时区的用户.

ID         DateTimeUTC               TimeZoneID            

1          2011-07-12 02:15:15.000   TimeZneID1
2          2011-07-13 16:00:00.000   TimeZneID2
3          2013-11-03 17:00:00.000   TimeZneID3
4          2011-08-22 03:00:00.000   TimeZneID4
5          2011-07-16 22:00:00.000   TimeZneID5
Run Code Online (Sandbox Code Playgroud)

创建一个每15分钟运行一次的计划流程并执行以下步骤:

  1. 获取记录;
  2. 第二种是将DateTimeUTC转换为适合时区的Time
  3. 比较它是否匹配
    a.发送提醒
    var tzi = TimeZoneInfo.FindSystemTimeZoneById(TimeZneID1);
    var local = TimeZoneInfo.ConvertTimeFromUtc(DateTimeUTC, tzi);
    var timeNow = TimeZoneInfo.ConvertTimeFromUtc(DateTime.Now, tzi);
    if(local == timeNow)
    SendReminder();

这是有效的方式吗?这是正确的方法吗?

c# sql asp.net

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