# Trung tâm xử lý sự cố > Hỏi-Đáp về Lập trình >  Giúp em về sửa và xóa bên trong GridView

## hoangkiso

- giờ em có 1 cái gridview để đổ dữ liệu vào . thì em tạo thêm 2 cột trong gridview , 1 cột là edit trực tiếp trong gridview , 1 cột là xóa trực tiếp trong gridview . và mục đích của em là khi mình đánh chữ vào textbox và bấm nút thêm dữ liệu thì dữ liệu được đưa vào gridview . sau đó nếu muốn sửa dữ liệu hay xóa dữ liệu thì click vào nút bấm link trong gridview để sửa , click vào nút bấm link trong gridview để xóa . thì để thực hiện ý tưởng này em có sưu tầm trên mạng được đoạn code như thế này và đã chạy thành công :



```
// sửa dữ liệu ngay trong gridview
        protected void grvuser_rowupdating(object sender, gridviewupdateeventargs e)
        {
                sqlconnection kn = new sqlconnection(dl);
                sqlcommand lenh = new sqlcommand();
                lenh.commandtext = "update [dbo].[user] set [email protected],[email protected] where [email protected]";
                lenh.parameters.add("@allow", sqldbtype.nvarchar).value = ((textbox)grvuser.rows[e.rowindex].cells[4].controls[0]).text.trim();
                lenh.parameters.add("@password", sqldbtype.nvarchar).value = ((textbox)grvuser.rows[e.rowindex].cells[3].controls[0]).text.trim();
                lenh.parameters.add("@username", sqldbtype.nvarchar).value = grvuser.rows[e.rowindex].cells[2].text.trim();
                
                lenh.connection = kn;
                kn.open();
                lenh.executenonquery();
                kn.close();
                grvuser.editindex = -1;
            loaddata();
        }
        
// xóa dữ liệu ngay trong gridview

        protected void grvuser_rowdeleting(object sender, gridviewdeleteeventargs e)
        {
            sqlconnection kn = new sqlconnection(dl);
            sqlcommand lenh = new sqlcommand();
            lenh.commandtext = "delete [dbo].[user] where [email protected] or username=''";
            lenh.parameters.addwithvalue("@username", grvuser.rows[e.rowindex].cells[2].text.tostring().trim());
            lenh.connection = kn;
            kn.open();
            lenh.executenonquery();
            kn.close();
            loaddata();
        }
```

- thì code như thế này chạy ngon lành , sửa xóa ok hết . tuy nhiên lại có 1 vấn đề nảy sinh đó là nếu chữ trong textbox mình lại đánh có dấu hay tiếng việt thì khi click nút bấm link xóa hay sửa bên trong gridview thì lại không có tác dụng gì cả . mà ở trong sql sever thì em đã khai báo cho các trường ở textbox là kiểu nvarchar rồi mà tại sao lại như vậy nhỉ . ai giải thích giúp em với , thank

----------

