Пример #1
0
        public MainWindow()
        {
            InitializeComponent();
            // SampleDb.sqlite を作成(存在しなければ)
            using (var conn = new SQLiteConnection("Data Source=SampleDb.sqlite"))
            {
                // データベースに接続
                conn.Open();
                // コマンドの実行
                using (var command = conn.CreateCommand())
                {
                    // テーブルが存在しなければ作成する
                    // 種別マスタ
                    StringBuilder sb = new StringBuilder();
                    sb.Append("CREATE TABLE IF NOT EXISTS MSTKIND (");
                    sb.Append("  KIND_CD NCHAR NOT NULL");
                    sb.Append("  , KIND_NAME NVARCHAR");
                    sb.Append("  , primary key (KIND_CD)");
                    sb.Append(")");

                    command.CommandText = sb.ToString();
                    command.ExecuteNonQuery();

                    // 猫テーブル
                    sb.Clear();
                    sb.Append("CREATE TABLE IF NOT EXISTS TBLCAT (");
                    sb.Append("  NO INT NOT NULL");
                    sb.Append("  , NAME NVARCHAR NOT NULL");
                    sb.Append("  , SEX NVARCHAR NOT NULL");
                    sb.Append("  , AGE INT DEFAULT 0 NOT NULL");
                    sb.Append("  , KIND_CD NCHAR DEFAULT 0 NOT NULL");
                    sb.Append("  , FAVORITE NVARCHAR");
                    sb.Append("  , primary key (NO)");
                    sb.Append(")");

                    command.CommandText = sb.ToString();
                    command.ExecuteNonQuery();

                    // 種別マスタを取得してコンボボックスに設定する
                    using (DataContext con = new DataContext(conn))
                    {
                        // データを取得
                        Table <Kind>      mstKind = con.GetTable <Kind>();
                        IQueryable <Kind> result  = from x in mstKind orderby x.KindCd select x;

                        // 最初の要素は「指定なし」とする
                        Kind empty = new Kind();
                        empty.KindCd   = "";
                        empty.KindName = "指定なし";
                        var list = result.ToList();
                        list.Insert(0, empty);

                        // コンボボックスに設定
                        this.search_kind.ItemsSource       = list;
                        this.search_kind.DisplayMemberPath = "KindName";
                    }
                }
                // 切断
                conn.Close();
            }
        }
Пример #2
0
        public MainWindow()
        {
            InitializeComponent();
            // SampleDb.sqlite を作成(存在しなければ)
            //using (var conn = new SQLiteConnection("Data Source=SampleDb.sqlite"))
            using (var conn = new MySqlConnection("Database=DB01;Data Source=localhost;User Id=USER01;Password=USER01; sqlservermode=True;"))
            {
                // データベースに接続
                conn.Open();
                // コマンドの実行
                using (var command = conn.CreateCommand())
                {
                    // テーブルが存在しなければ作成する
                    // 種別マスタ
                    StringBuilder sb = new StringBuilder();
                    sb.Append("CREATE TABLE IF NOT EXISTS MSTKIND (");
                    sb.Append("  KIND_CD CHAR(2) NOT NULL");
                    sb.Append("  , KIND_NAME VARCHAR(20)");
                    sb.Append("  , PRIMARY KEY (KIND_CD)");
                    sb.Append(")");
                    command.CommandText = sb.ToString();
                    command.ExecuteNonQuery();

                    // 猫テーブル
                    sb.Clear();
                    sb.Append("CREATE TABLE IF NOT EXISTS TBLCAT (");
                    sb.Append("  NO INTEGER(2) NOT NULL");
                    sb.Append("  , NAME VARCHAR(20) NOT NULL");
                    sb.Append("  , SEX CHAR(3) NOT NULL");
                    sb.Append("  , AGE INTEGER(1) DEFAULT 0 NOT NULL");
                    sb.Append("  , KIND_CD CHAR(2) DEFAULT '00' NOT NULL");
                    sb.Append("  , FAVORITE VARCHAR(40)");
                    sb.Append("  , PRIMARY KEY (NO)");
                    sb.Append(")");

                    command.CommandText = sb.ToString();
                    command.ExecuteNonQuery();

                    // 種別マスタを取得してコンボボックスに設定する
                    using (DataContext con = new DataContext(conn))
                    {
                        // データを取得
                        Table <Kind>      mstKind = con.GetTable <Kind>();
                        IQueryable <Kind> result  = from x in mstKind orderby x.KindCd select x;

                        // 最初の要素は「指定なし」とする
                        Kind empty = new Kind();
                        empty.KindCd   = "";
                        empty.KindName = "指定なし";
                        var list = result.ToList();
                        list.Insert(0, empty);

                        // コンボボックスに設定
                        this.search_kind.ItemsSource       = list;
                        this.search_kind.DisplayMemberPath = "KindName";
                    }
                }
                // 切断
                conn.Close();
            }
        }