/// <summary> /// トランザクション終了 /// </summary> /// <param name="query">終了クエリ</param> /// <param name="isErrSkip">エラースキップフラグ</param> private static void TransactionEnd(string query, bool isErrSkip = false) { // トランザクション終了 foreach (string key in tranList.Keys) { SQLiteDao.Execute(ConnectionOpen(key), query, null, isErrSkip); } // トランザクションリスト初期化 tranList.Clear(); }
/// <summary> /// トランザクション開始 /// </summary> /// <param name="dao">DAO</param> public static void Begin(SQLiteDao dao) { string dbName = dao.GetDbName(); // すでに開始済みなら何もしない if (IsTran(dbName)) { return; } // トランザクションに追加して、BEGIN発行 tranList.Add(dbName, true); dao.Execute("BEGIN"); }
static void Main(string[] args) { var sdao = new SQLiteDao(dbname, passwd); //var table = sdao.CreateTable<int>("user", // new hHeader(fieldname: "uid", fieldType: FieldType.INTEGER, autoincrement: true, primarykey: true, unique: true, notnull: true), // new hHeader(fieldname: "userName", fieldType: FieldType.STRING), // new hHeader(fieldname: "header", fieldType: FieldType.BLOB) // ); //Console.WriteLine(table.DDL); Console.WriteLine(); Console.WriteLine("finished"); Console.ReadKey(); }
/// <summary> /// トランザクション判定 /// </summary> /// <param name="dbName">DB名</param> /// <returns>true:トランザクション内/false:トランザクション外</returns> public static bool IsTran(SQLiteDao dao) { return(tranList.ContainsKey(dao.GetDbName())); }
static void Main(string[] args) { SQLiteDao dao = new SQLiteDao(); //return; //var q = new Quandl(); //var dates = new List<DateTime>(); //for (int i = 0; i < 5; i++) { // dates.Add(DateTime.Now - TimeSpan.FromDays(100) + TimeSpan.FromDays(i)); //} //var stats = q.GetStats("AAPL.Q-T", dates); var guestMiners = new List <IGuestMiner>() { new MarketCallGuestMiner(), new MarketCallTonightGuestMiner() }; var guests = new List <Guest>(); foreach (var guestMiner in guestMiners) { Console.Out.WriteLine("Requesting guests from {0}...", guestMiner.ToString()); var g = guestMiner.GetGuests().ToList(); if (null == g || g.Count == 0) { Console.Out.WriteLine("Unable to obtain guest list."); continue; } guests.AddRange(g); } guests = guests.Distinct().ToList(); Console.Out.WriteLine("Found {0} guests: {1}", guests.Count, string.Join(", ", guests.Select(g => g.Name))); if (guests.Count == 0) { Console.Out.WriteLine("Cannot continue without guest list"); Console.ReadLine(); return; } foreach (var g in guests) { var opinions = dao.FindOpinionsByExpert(g.Name); } //var miner = new StockChaseOpinionMiner();s //Console.Out.WriteLine("Opening opinion storage..."); //var opinionStore = new OpinionStore(); //Console.Out.WriteLine("Opinion store contains {0} opinions. Last updated {1}. Updating...", opinionStore.Opinions.Count, opinionStore.LastUpdate.ToShortDateString()); //var newOpinionCount = opinionStore.Update(miner); //Console.Out.WriteLine("Found {0} new opinions.", newOpinionCount); //Console.Out.WriteLine("Matching..."); //var result = MatchHelpers.GetOpinionHistory(guests, opinionStore.Opinions); //foreach (var r in result) //{ // Console.Out.WriteLine("{0} => {1}", r.Key, r.Value.First().ToString()); //} //var now = DateTime.Now; //int index = 2; //var directoryBase = "output/" + now.ToString("dd_MM_yyyy"); //string directory = directoryBase; //while (Directory.Exists(directory)) //{ // directory = directoryBase + " (" + index++ + ")"; //} //Directory.CreateDirectory(directory); //Console.Out.WriteLine("Writing results to {0}", directory); //OutputWriter.WriteAll(directory, result); //Console.Out.WriteLine(Environment.NewLine + "Complete. Press any key to exit"); //Console.ReadLine(); }