zoukankan      html  css  js  c++  java
  • ADO.NET非连接类,关于DataTable、DataColumn和DataRow对象的创建(转)

    非连接数据访问类是在客户应用程序中进行实例化的。在使用非连接类时必须使用DataTable对象。

    DataTable对象

    DataTable对象将表格化数据表示为内存中的一个包含行、列和约束条件的表。

    创建一个DataTable对象:

    DataTable 对象 = new DataTable(对象名);

     

    例:DataTable Student = new DataTable(“student”);

    上例就创建了一个对象名为StudentDataTable对象。

     

    注意:在vs2005中有时会出现这样的错误:““DataTable”是“命名空间”,但此处被当做“类型”来使用”。那是因为DataTable是命名空间System里的一个命名空间,,所以,为了解决这个问题可以这样来调用:

     

    System.Data.DataTable Student = new DataTable("student");

     

    这样就不会出现上面的错误了!

    添加DataColumn对象以创建一个模式

    一个表中必须有至少一个以上的Column对象,也就是二维表中的列!创建语法如下:

    DataColumn 对象 = new DataColumn(对象名);

    //设置对象属性

    ……

    DataTable对象.Columns.Add(DataColum对象);

    例如在上面的Student中加入studentnumberstudentnamestudentsex3个属性列:

              


    //创建studentnumber列:

                DataColumn studentnumber 
    = new DataColumn("ID");

                studentnumber.AllowDBNull 
    = false;//该列是否允许有空值

                studentnumber.DataType 
    = typeof(string);//该列的数据类型的设置

                studentnumber.MaxLength 
    = 10;//该列的属性的最大长度

                studentnumber.Unique 
    = true;//该列里的值是否取唯一值

     

                
    //创建studentname列:

                DataColumn studentname 
    = new DataColumn("name"typeof(string));

                studentname.AllowDBNull 
    = false;

                studentname.MaxLength 
    = 10;

                studentname.Unique 
    = false;

     

                
    //创建studentsex列:

                DataColumn studentsex 
    = new DataColumn("sex"typeof(string));

                studentsex.Unique 
    = false;

                studentsex.AllowDBNull 
    = true;

                studentsex.MaxLength 
    = 1;

     

                
    //将刚刚创建好的列加入Student表中:

                Student.Columns.Add(studentnumber);

                Student.Columns.Add(studentname);

                Student.Columns.Add(studentsex);

    创建主键列

    一个DataTable对象的主键由一个或者多个列构成,以唯一表示每个数据行。创建方法如下:

     

    DataTable对象.PrimaryKey = new DataColumn[]{DataColumn对象集合};

    例:我们把刚刚创建好的Student中的studentnumber设置为主键列:

     

    //把studentnumber列设置为主键列:

                Student.PrimaryKey = new DataColumn[] { studentnumber };

    可以看到,其实主键列就是一个DataColumn对象的数组!

    创建用于存储数据的DataRow对象

    介绍三种常用的创建方法:

     

    1. DataRow 对象 = DataTable对象.NewRow( );

    //设置每个属性列的值:

    DataRow对象[索引] = 要设置的值;

    ……

    //设置完毕

    DataTable对象.Rows.Add(DataRow对象);

     

    2.        DataTable对象.Rows.Add(第一列属性值,第二列属性值……第n列属性值);

    3.         

    4.        使用 DataTable对象.LoadDataRow()函数;

    下面分别使用这3中方法将小红、小明和小张这三个人加入Student中:


    //把小红加入Student中:

                DataRow row_xiaohong 
    = Student.NewRow();

                row_xiaohong[studentnumber] 
    = "00001";

                row_xiaohong[studentname] 
    = "小红";

                row_xiaohong[studentsex] 
    = "";

                Student.Rows.Add(row_xiaohong);

     

                
    //把小明加入Student中:

                Student.Rows.Add(
    "00002""小明""");

     

                
    //把小张加入Student中:

                Student.LoadDataRow(
    new object[]{"00003","小张",""},LoadOption.OverwriteChanges);

    非连接数据访问类是在客户应用程序中进行实例化的。在使用非连接类时必须使用DataTable对象。

    DataTable对象

    DataTable对象将表格化数据表示为内存中的一个包含行、列和约束条件的表。

    创建一个DataTable对象:

    DataTable 对象 = new DataTable(对象名);

     

    例:DataTable Student = new DataTable(“student”);

    上例就创建了一个对象名为StudentDataTable对象。

     

    注意:在vs2005中有时会出现这样的错误:““DataTable”是“命名空间”,但此处被当做“类型”来使用”。那是因为DataTable是命名空间System里的一个命名空间,,所以,为了解决这个问题可以这样来调用:

     

    System.Data.DataTable Student = new DataTable("student");

     

    这样就不会出现上面的错误了!

    添加DataColumn对象以创建一个模式

    一个表中必须有至少一个以上的Column对象,也就是二维表中的列!创建语法如下:

    DataColumn 对象 = new DataColumn(对象名);

    //设置对象属性

    ……

    DataTable对象.Columns.Add(DataColum对象);

    例如在上面的Student中加入studentnumberstudentnamestudentsex3个属性列:

              


    //创建studentnumber列:

                DataColumn studentnumber 
    = new DataColumn("ID");

                studentnumber.AllowDBNull 
    = false;//该列是否允许有空值

                studentnumber.DataType 
    = typeof(string);//该列的数据类型的设置

                studentnumber.MaxLength 
    = 10;//该列的属性的最大长度

                studentnumber.Unique 
    = true;//该列里的值是否取唯一值

     

                
    //创建studentname列:

                DataColumn studentname 
    = new DataColumn("name"typeof(string));

                studentname.AllowDBNull 
    = false;

                studentname.MaxLength 
    = 10;

                studentname.Unique 
    = false;

     

                
    //创建studentsex列:

                DataColumn studentsex 
    = new DataColumn("sex"typeof(string));

                studentsex.Unique 
    = false;

                studentsex.AllowDBNull 
    = true;

                studentsex.MaxLength 
    = 1;

     

                
    //将刚刚创建好的列加入Student表中:

                Student.Columns.Add(studentnumber);

                Student.Columns.Add(studentname);

                Student.Columns.Add(studentsex);

    创建主键列

    一个DataTable对象的主键由一个或者多个列构成,以唯一表示每个数据行。创建方法如下:

     

    DataTable对象.PrimaryKey = new DataColumn[]{DataColumn对象集合};

    例:我们把刚刚创建好的Student中的studentnumber设置为主键列:

     

    //把studentnumber列设置为主键列:

                Student.PrimaryKey = new DataColumn[] { studentnumber };

    可以看到,其实主键列就是一个DataColumn对象的数组!

    创建用于存储数据的DataRow对象

    介绍三种常用的创建方法:

     

    1. DataRow 对象 = DataTable对象.NewRow( );

    //设置每个属性列的值:

    DataRow对象[索引] = 要设置的值;

    ……

    //设置完毕

    DataTable对象.Rows.Add(DataRow对象);

     

    2.        DataTable对象.Rows.Add(第一列属性值,第二列属性值……第n列属性值);

    3.         

    4.        使用 DataTable对象.LoadDataRow()函数;

    下面分别使用这3中方法将小红、小明和小张这三个人加入Student中:


    //把小红加入Student中:

                DataRow row_xiaohong 
    = Student.NewRow();

                row_xiaohong[studentnumber] 
    = "00001";

                row_xiaohong[studentname] 
    = "小红";

                row_xiaohong[studentsex] 
    = "";

                Student.Rows.Add(row_xiaohong);

     

                
    //把小明加入Student中:

                Student.Rows.Add(
    "00002""小明""");

     

                
    //把小张加入Student中:

                Student.LoadDataRow(
    new object[]{"00003","小张",""},LoadOption.OverwriteChanges);
  • 相关阅读:
    python2 类型转换和数值操作
    python2 实现的LED大数字效果
    Python2 基础语法(三)
    delphi操作ini文件
    [SQL]数据库还原 42000错误
    我的宝宝来了
    [DELPHI] D2009控件的安装
    DELPHI学习过程和函数
    [SQL][转载]SQL优化索引
    [SQL] SQL语句,存储过程执行时间
  • 原文地址:https://www.cnblogs.com/beeone/p/1991314.html
Copyright © 2011-2022 走看看