[C# 문법] C# DataTable 데이터 값 변경하는 방법


안녕하세요.

 

오늘은 C# 에서 DataTable에 이미 저장되어 있는 데이터의 값을 임의로 변경하는 방법에 대해서 설명 드리려고 합니다.

 

저는 C# 으로 실무를 하다보면, DataTable을 많이 사용하고 또 가끔씩 DataTable의 값을 변경해야 하는 경우가 있는데요.

 

이럴 때, 유용하게 사용할 수 있기 때문에 익혀 두시면 좋을거에요~~


 

그럼 바로 예제 코드를 통해서 어떻게 DataTable 데이터 값은 변경하는지 알아보도록 할게요.


예제 코드


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

using System;

using System.Collections.Generic;

using System.Data;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

 

namespace DataTableTest

{

    class Program

    {

        static DataTable dt = null;

 

        static void Main(string[] args)

        {

            dt = new DataTable();

 

            dt = GetData();

 

            // 변경  DataTable 원래  출력

            Console.WriteLine("-------------- 변경 --------------");

            for(int row = 0; row < dt.Rows.Count; row++)

            {

                string msg = string.Format("이름 : {0}, 나이 : {1}, 학년 : {2}",

                                dt.Rows[row][0].ToString(),

                                dt.Rows[row][1].ToString(),

                                dt.Rows[row][2].ToString());

 

                Console.WriteLine(msg);

            }

 

            Console.WriteLine();

            Console.WriteLine();

 

            //DataTable  변경하기

            Console.WriteLine("-------------- 변경 --------------");

            foreach(DataRow dr in dt.Rows)

            {

                if(dr["Name"].ToString() == "범범조조"//이름이 범범조조인 학생을

                {

                    dr["Name"= "헤이즈"//헤이즈로 변경

                }

            }

 

            for (int row = 0; row < dt.Rows.Count; row++)

            {

                string msg = string.Format("이름 : {0}, 나이 : {1}, 학년 : {2}",

                                dt.Rows[row][0].ToString(),

                                dt.Rows[row][1].ToString(),

                                dt.Rows[row][2].ToString());

 

                Console.WriteLine(msg);

            }

        }

 

        public static DataTable GetData()

        {

            dt = new DataTable();

 

            dt.Columns.Add("Name"typeof(string));

            dt.Columns.Add("Age"typeof(int));

            dt.Columns.Add("Grade"typeof(int));

 

            dt.Rows.Add("범범조조"284);

            dt.Rows.Add("안정환"384);

            dt.Rows.Add("아이유"281);

            dt.Rows.Add("양준일"182);

            dt.Rows.Add("태연"223);

 

            return dt;

        }

    }

}

 

Colored by Color Scripter

cs


실행 결과



위와 같이 Name 컬럼에서 이름이 범범조조” 인 학생을 헤이즈로 변경돼서 출력된 것을 확인하실 수 있습니다.

 

감사합니다.^^


728x90

이 글을 공유하기

댓글

Designed by JB FACTORY