[기관실 재 구성]-사용자 관리

【머리말】
사용자 관 리 를 어떻게 하 는 지 는 기본 적 인 첨삭 과 검 사 를 하 는 것 밖 에 없다.그러나 DAL 에서 SQL 문 구 를 여러 개 써 야 한다.생각해 보 니 머리 가 큰 것 은 저장 과정 을 과감하게 사용 하 는 것 이 좋 겠 다.저장 과정의 장점 도 많 기 때문에 저 는 일일이 예 를 들 지 않 고 다음 에 본론 으로 들 어 가 겠 습 니 다.
 
[본문]
기억 프로시저 코드
ALTER PROCEDURE  [dbo].[PROC_User]
	-- Add the parameters for the stored procedure here
	@txtUserName varchar(20),
	@txtPWD varchar(20),
	@txtlevel varchar(20),
	@UserName varchar(20),
	@jianzhi int
AS
	declare @sql varchar(500)
BEGIN
	if(@jianzhi=1)
		begin
		SET @sql='SELECT * FROM [dbo].[User]'
	END
	IF(@jianzhi=2)
		begin
		SET @sql='INSERT INTO [dbo].[User] VALUES ('+@txtUserName+','+@txtPWD+','+@txtlevel+','+@UserName+')'
	END 
	
	IF(@jianzhi=3)
		begin
		SET @sql='UPDATE [dbo].[User] SET PassWord='+@txtPWD+',Level='+@txtlevel+',RegistrarID='+@UserName+' WHERE UserName='+@txtUserName+''
	END
	IF(@jianzhi=4)
		begin
		SET @sql='DELETE FROM [dbo].[User] WHERE UserName='+@txtUserName+''
	
	END
	exec(@sql)

   
END

 UI 계층 코드
//C# datagridview    textbox        
        private void dataGridView1_SelectionChanged_1(object sender, EventArgs e)
        {
            if (this.dataGridView1.SelectionMode != DataGridViewSelectionMode.FullColumnSelect)
            {
                int index = dataGridView1.CurrentRow.Index; //        
                txtUserName.Text = dataGridView1.Rows[index].Cells[1].Value.ToString();
                txtPwd.Text = dataGridView1.Rows[index].Cells[2].Value.ToString();
                txtlevel.Text = dataGridView1.Rows[index].Cells[3].Value.ToString();
            };
        }
//            
 dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
                if (dataGridView1.SelectedRows[0].Index == dataGridView1.Rows.Count - 1)
                {
                    button1.Enabled = true;
                }
                else
                {
                    button1.Enabled = true;
                }
//    
foreach (DataGridViewRow dr in dataGridView1.Rows)
                {
                    if (dr.Cells[1]. ToString() == txtUserName.Text.Trim())
                    {
                        //    
                        MessageBox.Show("     ,      ", "    ", 0, MessageBoxIcon.Warning);
                        txtUserName.Text = "";
                        txtUserName.Select(0, 0);
                        return;
                    }
                    
                }
                DataTable flag = facade.User(UserInfo);
                if (flag.Rows.Count!=0)
                {
                    MessageBox.Show("    ", "    ", 0, MessageBoxIcon.Warning);
                }
//       
 foreach (DataGridViewRow row in dataGridView1.SelectedRows )
                {
                    UserInfo.jianzhi = 4;
                    UserInfo.txtUserName= row.Cells[1].Value.ToString();
                    DataTable flag = facade.User(UserInfo);
                    DataRowView drv = dataGridView1.SelectedRows[0].DataBoundItem as DataRowView;
                    drv.Delete();
                }
                MessageBox.Show("    !", "    ", 0, MessageBoxIcon.Warning);

 
[총괄]
이러한 기본 기능 을 완성 한 후에 도 일부 해결 되 지 않 았 습 니 다.예 를 들 어 사용자 가 선택 한 공백 줄 을 추가 한 후에 야 추가 할 수 있 고 작은 문제 가 존재 합 니 다.여러분 이 지적 해 주 실 수 있 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기