コード例 #1
0
ファイル: Choose Priv.cs プロジェクト: huuhao1999/ABTM
        private int Select_Grant()
        {
            DataTable temp = (DataTable)Priv_dataGridView.DataSource;
            string    Grant_select_No_GrantOption_str  = "";
            string    Grant_select_WithGrantOption_str = "";

            // NẾU CHỌN VÀO NHỮNG CỘT BỊ MÃ HÓA THÌ THỰC HIỆN NGƯNG QUI TRÌNH VÀ HIỆN LỖI
            foreach (DataRow dr in temp.Rows)
            {
                if ((dr["COLUMN_NAME"].ToString().ToUpper() == "LUONG" || dr["COLUMN_NAME"].ToString().ToUpper() == "PHUCAP") && this.Table_name == "LUONG")
                {
                    MessageBox.Show("CỘT " + dr["COLUMN_NAME"].ToString().ToUpper() + "ĐÃ ĐƯỢC MÃ HÓA, KHÔNG ĐƯỢC PHÉP ADD QUYỀN SELECT QUA APP!!", "WARNING", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return(0);
                }
            }
            MainForm.Login_Form.conn.Open();
            // THỰC HIỆN DROP HẾT QUYỀN SELECT CỦA USER CÓ THỂ CÓ TRÊN OBJECT TUONG ỨNG
            Oracle.Drop_View(MainForm.Login_Form.conn, Table_name, MainForm.username);

            // KHỞI TẠO RA STRING GỒM CÁC CỘT ĐỂ ĐƯỢC GRANT
            foreach (DataRow dr in temp.Rows)
            {
                if (Convert.ToBoolean(dr["ENABLED"]))
                {
                    Grant_select_No_GrantOption_str += dr["COLUMN_NAME"].ToString() + ',';
                    if (Convert.ToBoolean(dr["WITH GRANT OPTION"]) && MainForm.is_user)
                    {
                        Grant_select_WithGrantOption_str += dr["COLUMN_NAME"].ToString() + ',';
                    }
                }
            }
            if (Grant_select_No_GrantOption_str != "")
            {
                // BỎ KÍ TỰ ',' DƯ
                Grant_select_No_GrantOption_str = Grant_select_No_GrantOption_str.Remove(Grant_select_No_GrantOption_str.Length - 1, 1);

                // THỰC HIỆN GRANT
                Oracle.Create_View_Select(MainForm.Login_Form.conn, Table_name, Grant_select_No_GrantOption_str, MainForm.username, false);
            }
            if (Grant_select_WithGrantOption_str != "")
            {
                // BỎ KÍ TỰ ',' DƯ
                Grant_select_WithGrantOption_str = Grant_select_WithGrantOption_str.Remove(Grant_select_WithGrantOption_str.Length - 1, 1);
                Oracle.Create_View_Select(MainForm.Login_Form.conn, Table_name, Grant_select_WithGrantOption_str, MainForm.username, true);
            }
            //MessageBox.Show(Grant_select_No_GrantOption_str);
            //MessageBox.Show(Grant_select_WithGrantOption_str);
            MainForm.Login_Form.conn.Close();
            return(1);
        }