예제 #1
0
        public void TestCreateRetrieveAndDeleteRow()
        {
            DBHelper dbHelper = new DBHelper(DatabaseType.MicrosoftSQLServer);
            SetupTestDatabaseForMSSQL(dbHelper);

            Query q = new Query("INSERT INTO test_table (ID, Description) "+
                                "VALUES (1, 'ettal')");
            SqlResult result = dbHelper.executeQuery(q);
            Assert.IsNotNull(result);

            Query q2 = new Query("SELECT Description "+
                                    "FROM test_table "+
                                    "WHERE ID=1");
            result = dbHelper.executeQuery(q2);
            Assert.IsNotNull(result);
            Assert.IsTrue(result.DataRemaining());

            result.NextRow();
            var strResult = result.ReadString("Description");
            Assert.AreEqual("ettal", strResult);

            Query q3 = new Query("DELETE FROM test_table  " +
                                "WHERE ID=1");
            result = dbHelper.executeQuery(q3);
            Assert.IsNotNull(result);

            result = dbHelper.executeQuery(q2);
            Assert.IsNotNull(result);
            Assert.IsTrue(result.AmountOfRows() == 0);
        }
예제 #2
0
        public void TestDateTime()
        {
            DBHelper dbHelper = new DBHelper(DatabaseType.MicrosoftSQLServer);
            SetupTestDatabaseForMSSQL(dbHelper);

            Query q = new Query("INSERT INTO test_table (ID, DateCreated) " +
                                "VALUES (1, @dateCreated)");
            q.addDateTimeParameter("datecreated", DateTime.Today.Date);
            SqlResult result = dbHelper.executeQuery(q);
            Assert.IsNotNull(result);

            Query q2 = new Query("SELECT DateCreated " +
                                    "FROM test_table " +
                                    "WHERE ID=1");
            result = dbHelper.executeQuery(q2);
            Assert.IsNotNull(result);
            Assert.IsTrue(result.DataRemaining());

            result.NextRow();
            Assert.AreEqual(DateTime.Today.Date, result.ReadDateTime("DateCreated"));

            Query q3 = new Query("DELETE FROM test_table  " +
                                "WHERE ID=1");
            result = dbHelper.executeQuery(q3);
            Assert.IsNotNull(result);
        }
예제 #3
0
        private void bt_OK_Click(object sender, EventArgs e)
        {
            DatabaseHelper.DBHelper helper = DatabaseHelper.DBHelper.GetDBHelper();
            //if(!helper.ExistTable("用户表"))
            //{
            //    new DatabaseCreater().CreateTableUser(helper.GetConnector());
            //}
            if (helper.Login(cmb_UserName.Text, tb_Password.Text, ref RealName, ref UserRoler))
            {
                UserName     = cmb_UserName.Text;
                UserPassword = tb_Password.Text;
                if (cb_Remember.Checked)
                {
                    // 登录时 如果没有Data.bin文件就创建、有就打开
                    FileStream      fs = new FileStream("userData.bin", FileMode.OpenOrCreate);
                    BinaryFormatter bf = new BinaryFormatter();

                    // 保存在实体类属性中
                    if (UserDatas.Any(u => u.Key == cmb_UserName.Text))
                    {
                        UserDatas.Remove(cmb_UserName.Text);
                    }
                    UserDatas.Add(cmb_UserName.Text, tb_Password.Text);
                    //写入文件
                    bf.Serialize(fs, UserDatas);
                    //关闭
                    fs.Close();
                    fs.Dispose();
                    fs = null;
                }
                this.DialogResult = System.Windows.Forms.DialogResult.OK;
            }
            else
            {
                MessageBox.Show("您输入的用户名或密码不正确,请重新输入!");
                UserDatas.Remove(cmb_UserName.Text);
                FileStream      fs = new FileStream("userData.bin", FileMode.OpenOrCreate);
                BinaryFormatter bf = new BinaryFormatter();
                //写入文件
                bf.Serialize(fs, UserDatas);
                //关闭
                fs.Close();
                fs.Dispose();
                fs = null;
                cmb_UserName.Text = "";
                tb_Password.Text  = "";
                cmb_UserName.Focus();
                cmb_UserName.DataSource = UserDatas.Keys.ToList();
                if (cmb_UserName.Items.Count > 0)
                {
                    cmb_UserName.SelectedIndex = 0;
                }
            }
        }
예제 #4
0
        public void TestConnectToDatabase()
        {
            DBHelper dbHelper = new DBHelper(DatabaseType.MicrosoftSQLServer);
            SetupTestDatabaseForMSSQL(dbHelper);

            Query q = new Query("SELECT DB_NAME() AS Name");
            SqlResult result = dbHelper.executeQuery(q);

            Assert.IsNotNull(result);

            result.NextRow();

            var strResult = result.ReadString("Name");

            Assert.AreEqual("testing", strResult);
        }
예제 #5
0
 public void TestCreateDBHelper()
 {
     DBHelper dbHelper = new DBHelper(DatabaseType.MicrosoftSQLServer);
     dbHelper = new DBHelper(DatabaseType.Simulation);
 }
예제 #6
0
 private static void SetupTestDatabaseForMSSQL(DBHelper dbHelper)
 {
     string name = "michael";
     string password = "******";
     string serverurl = "localhost\\SQLEXPRESS";
     string databasename = "testing";
     dbHelper.SetLoginInformation(name, password, databasename, serverurl);
 }
예제 #7
0
        public void TestIntParametrization()
        {
            DBHelper dbHelper = new DBHelper(DatabaseType.MicrosoftSQLServer);
            SetupTestDatabaseForMSSQL(dbHelper);

            Query q = new Query("INSERT INTO test_table (ID, Description) " +
                                "VALUES (@id, 'ettal')");
            q.addIntParameter("id", 1);
            SqlResult result = dbHelper.executeQuery(q);
            Assert.IsNotNull(result);

            Query q2 = new Query("SELECT Description " +
                                    "FROM test_table " +
                                    "WHERE ID=@id");
            q2.addIntParameter("id", 1);
            result = dbHelper.executeQuery(q2);
            Assert.IsNotNull(result);
            Assert.IsTrue(result.DataRemaining());

            result.NextRow();
            var strResult = result.ReadString("Description");
            Assert.AreEqual("ettal", strResult);

            Query q3 = new Query("DELETE FROM test_table  " +
                                "WHERE ID=1");
            result = dbHelper.executeQuery(q3);
            Assert.IsNotNull(result);
        }
 /// <summary>
 /// Defines a new MicrosoftSqlServerModule.
 /// </summary>
 /// <param name="dbHelper">The parent.</param>
 public MicrosoftSQLServerModule(DBHelper dbHelper)
 {
     DbHelper = dbHelper;
 }