本文整理汇总了C#中IDbConnection.From方法的典型用法代码示例。如果您正苦于以下问题:C# IDbConnection.From方法的具体用法?C# IDbConnection.From怎么用?C# IDbConnection.From使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IDbConnection
的用法示例。
在下文中一共展示了IDbConnection.From方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AdjustFileForSpringDst
private void AdjustFileForSpringDst(AgdFile agdFile, IDbConnection db, DaylightTime daylightTime)
{
//see if there's any epochs before DST
int epochsBeforeSpringDst =
db.Scalar<int>(
db.From<AgdTableTimestampAxis1>()
.Select(Sql.Count("*"))
.Where(q => q.TimestampTicks < daylightTime.Start.Ticks));
bool dataBeforeSpringDst = epochsBeforeSpringDst > 0;
int epochsAfterSpringDst =
db.Scalar<int>(
db.From<AgdTableTimestampAxis1>()
.Select(Sql.Count("*"))
.Where(q => q.TimestampTicks > daylightTime.Start.Ticks));
bool dataAfterSpringDst = epochsAfterSpringDst > 0;
if (!dataBeforeSpringDst && dataAfterSpringDst)
{
//no need to do anything
richTextBox1.AppendText(string.Format("{0}: NOT adjusting file for spring DST\r\n", agdFile));
return;
}
richTextBox1.AppendText(string.Format("{0}: adjusting file for spring DST\r\n", agdFile));
//adjust timestamps for data after DST by subtracting an hour
string sql =
string.Format(
"UPDATE data SET dataTimestamp = dataTimestamp + {0} WHERE dataTimestamp >= {1}",
daylightTime.Delta.Ticks, daylightTime.Start.Ticks);
db.ExecuteSql(sql);
//add the extra hour of data (October 25th 0200)
var totalEpochsToInsert = daylightTime.Delta.TotalSeconds / agdFile.EpochLengthInSeconds;
var ticksPerEpoch = TimeSpan.FromSeconds(agdFile.EpochLengthInSeconds).Ticks;
for (int i = 0; i < totalEpochsToInsert; i++)
{
sql = string.Format("insert into data(dataTimestamp) values ({0});",
(daylightTime.Start.Ticks + (i * ticksPerEpoch)));
db.ExecuteSql(sql);
}
var columnNames = db.GetColumnNames("data");
foreach (var columnName in columnNames)
{
sql = string.Format("UPDATE data SET {0} = 0 WHERE {0} IS NULL", columnName);
db.ExecuteSql(sql);
}
//adjust WTV
if (db.TableExists("filters"))
{
sql =
string.Format(
"UPDATE filters SET filterStartTimestamp = filterStartTimestamp + {0} WHERE filterStartTimestamp >= {1}",
daylightTime.Delta.Ticks, daylightTime.Start.Ticks);
db.ExecuteSql(sql);
sql =
string.Format(
"UPDATE filters SET filterStopTimestamp = filterStopTimestamp + {0} WHERE filterStopTimestamp >= {1}",
daylightTime.Delta.Ticks, daylightTime.Start.Ticks);
db.ExecuteSql(sql);
}
if (db.TableExists("wtvBouts"))
{
sql =
string.Format(
"UPDATE wtvBouts SET startTicks = startTicks + {0} WHERE startTicks >= {1}",
daylightTime.Delta.Ticks, daylightTime.Start.Ticks);
db.ExecuteSql(sql);
sql =
string.Format(
"UPDATE wtvBouts SET stopTicks = stopTicks + {0} WHERE stopTicks >= {1}",
daylightTime.Delta.Ticks, daylightTime.Start.Ticks);
db.ExecuteSql(sql);
}
//adjust capsense
if (db.TableExists("capsense"))
{
//adjust timestamps for data after DST by subtracting an hour
sql = string.Format(
"UPDATE capsense SET timeStamp = timeStamp + {0} WHERE timeStamp >= {1}",
daylightTime.Delta.Ticks, daylightTime.Start.Ticks);
db.ExecuteSql(sql);
}
}
示例2: GetIdStats
private void GetIdStats(IDbConnection db)
{
letterFrequenceMaxId = db.Scalar<int>(db.From<LetterFrequency>().Select(Sql.Max("Id")));
letterFrequencyMinId = db.Scalar<int>(db.From<LetterFrequency>().Select(Sql.Min("Id")));
letterFrequencySumId = db.Scalar<int>(db.From<LetterFrequency>().Select(Sql.Sum("Id")));
}
示例3: AdjustFileForFallDst
private void AdjustFileForFallDst(AgdFile agdFile, IDbConnection db, DaylightTime daylightTime)
{
//see if there's any epochs before DST
int epochsBeforeFallDst =
db.Scalar<int>(
db.From<AgdTableTimestampAxis1>()
.Select(Sql.Count("*"))
.Where(q => q.TimestampTicks < daylightTime.End.Ticks));
bool dataBeforeFallDst = epochsBeforeFallDst > 0;
int epochsAfterFallDst =
db.Scalar<int>(
db.From<AgdTableTimestampAxis1>()
.Select(Sql.Count("*"))
.Where(q => q.TimestampTicks > daylightTime.End.Ticks));
bool dataAfterFallDst = epochsAfterFallDst > 0;
if (dataBeforeFallDst && !dataAfterFallDst)
{
//there's only data before
//no need to do anything
richTextBox1.AppendText(string.Format("{0}: not adjusting file for fall DST\r\n", agdFile));
return;
}
richTextBox1.AppendText(string.Format("{0}: adjusting file for fall DST\r\n", agdFile));
//delete the extra hour of data (October 25th 0200)
string sql = string.Format("DELETE FROM data WHERE dataTimestamp >= {0} AND dataTimeStamp < {1}",
daylightTime.End.Ticks, daylightTime.End.Add(daylightTime.Delta).Ticks);
db.ExecuteSql(sql);
//adjust timestamps for data after DST by subtracting an hour
sql =
string.Format(
"UPDATE data SET dataTimestamp = dataTimestamp - {0} WHERE dataTimestamp >= {1}",
daylightTime.Delta.Ticks, daylightTime.End.Ticks);
db.ExecuteSql(sql);
//adjust WTV
if (db.TableExists("filters"))
{
sql =
string.Format(
"UPDATE filters SET filterStartTimestamp = filterStartTimestamp - {0} WHERE filterStartTimestamp >= {1}",
daylightTime.Delta.Ticks, daylightTime.End.Ticks);
db.ExecuteSql(sql);
sql =
string.Format(
"UPDATE filters SET filterStopTimestamp = filterStopTimestamp - {0} WHERE filterStopTimestamp >= {1}",
daylightTime.Delta.Ticks, daylightTime.End.Ticks);
db.ExecuteSql(sql);
}
if (db.TableExists("wtvBouts"))
{
sql =
string.Format(
"UPDATE wtvBouts SET startTicks = startTicks - {0} WHERE startTicks >= {1}",
daylightTime.Delta.Ticks, daylightTime.End.Ticks);
db.ExecuteSql(sql);
sql =
string.Format(
"UPDATE wtvBouts SET stopTicks = stopTicks - {0} WHERE stopTicks >= {1}",
daylightTime.Delta.Ticks, daylightTime.End.Ticks);
db.ExecuteSql(sql);
}
//adjust capsense
if (db.TableExists("capsense"))
{
//delete the extra hour of data (October 25th 0200)
sql = string.Format("DELETE FROM capsense WHERE timeStamp >= {0} AND timeStamp < {1}",
daylightTime.End.Ticks, daylightTime.End.Add(daylightTime.Delta).Ticks);
db.ExecuteSql(sql);
//adjust timestamps for data after DST by subtracting an hour
sql =
string.Format(
"UPDATE capsense SET timeStamp = timeStamp - {0} WHERE timeStamp >= {1}",
daylightTime.Delta.Ticks, daylightTime.End.Ticks);
db.ExecuteSql(sql);
}
}