DataGrid使用心得(调用及连接数据库等等)

时间:2024-01-23 17:31:15 

在工作中遇到把DataGrid中绑定的后台数据库数据展示给用户时把负数变为0的小问题,现在记录下来。

例子中数据表示这个样子的:

DataGrid使用心得(调用及连接数据库等等)

-------------------------------------------------------分割线--------------------------------------
1.DataGrid的调用  

DataGrid对于ASP.NET开发来说是一种在vs 工具箱中找不到的控件,所以调用它需要手写代码:


<asp:DataGrid runat="server" CssClass="DataList" AutoGenerateColumns="False" Id="dgData"></asp:DataGrid>


注意:AutoGenerateColumns 是是否要求DataGrid自动生成列的意思,true为准许生成,false为不许

如果我们如示例那样选择不许,那么我们需要自己指定DataGrid的列,代码就会扩展成:


<asp:DataGrid ID="dgData" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:BoundColumn DataField="LARGE" HeaderText="大"></asp:BoundColumn>
<asp:BoundColumn DataField="SMALLS" HeaderText="小"></asp:BoundColumn>
</Columns>
</asp:DataGrid>


它绑定后的结果就会是:
DataGrid使用心得(调用及连接数据库等等)

如果是自动扩充列就是:

DataGrid使用心得(调用及连接数据库等等)

PS:如果我们这么写呢?


<asp:DataGrid ID="dgData" runat="server" AutoGenerateColumns="true">
<Columns>
<asp:BoundColumn DataField="LARGE" HeaderText="大"></asp:BoundColumn>
<asp:BoundColumn DataField="SMALLS" HeaderText="小"></asp:BoundColumn>
</Columns>
</asp:DataGrid>


把自动扩充列的属性选择true,而下面我又给它加上自定义列,结果就是

DataGrid使用心得(调用及连接数据库等等)

2.连接数据库进行操作


OracleConnection conn = new OracleConnection("Data Source=xxx;User Id=xxx;Password=xxx;");
string sqlcmd = "select * from test_123";
conn.Open();
OracleCommand cmd = new OracleCommand(sqlcmd,conn);
DataSet dsRet = new DataSet();
OracleDataAdapter ad = new OracleDataAdapter(cmd);
ad.Fill(dsRet);
conn.Close();
int i = dsRet.Tables[0].Rows.Count;
int j = dsRet.Tables[0].Columns.Count;

for (int k = 0; k < i; k++)
for (int m = 0; m < j; m++)
{
if (int.Parse(dsRet.Tables[0].Rows[k][m].ToString()) < 0)
dsRet.Tables[0].Rows[k][m] = "0";

}

dgData.DataSource = dsRet.Tables[0];
dgData.DataBind();


首先是连接数据库的三板斧
建立Connection和查询串,装入Commond,DataAdapter填充。

我用DataSet作为大容器,我们可以把DataSet理解为一个柜子,这个柜子有很多的抽屉,抽屉就是DataTable,这个抽屉里是一个一个的格子,格子里面放的东西就是我们查询出来的数据,一个格子一个数儿。找到这些数儿就需要行列坐标来确定。

一般如果不指定数据表放在哪个抽屉,系统会默认为第0个。

由于DataTable是一个类,所以它的实例是一个对象,这个对象里面的东西它还是个对象,所以你不能认为 DataTable里面存的数值看着像是int型的,那么我的dsRet.Tables[0].Rows[k][m]就能当整型用,需要转换操作。

这样就能达到我最初想要的目的了。很基础,不要见笑,我也是一边学习一边总结,这样自己才能记住

标签:DataGrid,连接数据库
0
投稿

猜你喜欢

  • 微信小程序实现分页查询详解

    2024-04-16 10:38:58
  • Python列表1~n输出步长为3的分组实例

    2021-10-31 04:25:27
  • 如何设计一个成功的网站

    2007-09-07 10:33:00
  • python如何读取bin文件并下发串口

    2021-12-21 17:09:21
  • MySQL数据库十大优化技巧

    2024-01-25 22:51:28
  • TypeScript入门-接口

    2024-06-07 15:55:26
  • Python常用Web框架Django、Flask与Tornado介绍

    2021-06-24 18:19:35
  • 使用Python绘制空气质量日历图

    2023-06-20 12:19:21
  • Pytorch 数据加载与数据预处理方式

    2021-06-12 11:07:05
  • 对python中Matplotlib的坐标轴的坐标区间的设定实例讲解

    2023-06-28 10:18:40
  • 如何让python的运行速度得到提升

    2023-04-26 21:48:35
  • 利用Python实现普通视频变成动漫视频

    2023-02-05 05:13:59
  • 用XML创建可排序、分页的数据显示页面

    2008-04-22 18:25:00
  • Pandas实现批量拆分与合并Excel的示例代码

    2022-06-07 22:36:28
  • Python+Selenium+PIL+Tesseract自动识别验证码进行一键登录

    2023-04-13 19:29:37
  • MySQL case when使用方法实例解析

    2024-01-29 03:15:55
  • sqlserver 2008手工修改表结构,表不能保存的问题与解决方法

    2024-01-23 03:07:26
  • python list多级排序知识点总结

    2023-11-05 03:50:15
  • Python+DeOldify实现老照片上色功能

    2021-07-13 00:04:46
  • python使用numpy中的size()函数实例用法详解

    2023-11-19 10:18:45
  • asp之家 网络编程 m.aspxhome.com