数据库记录怎样显示在Table中(c#)

数据库记录怎样显示在Table中(c#),第1张

你可以用 Repeater 数据绑定控件来实现你的目的 给你举个例子:

后台绑定数据的代码

protected void Page_Load(object sender, EventArgs e)

{

Manager m = new Manager()

string sql = "select from 表名";

DataTable dt = mgetData(sql)Tables[0];

thisRepeater1DataSource = dtDefaultView;

thisRepeater1DataBind();

}

前台显示代码:

<asp:Repeater ID="Repeater1" runat="server">

<ItemTemplate>

<table>

<tr>

<td><%#Eval("用户名") %></td>

<td><%#Eval("编号") %></td>

<td><%#Eval("密码") %></td>

</tr>

</table>

</ItemTemplate>

</asp:Repeater>

这个就是Repeater数据绑定控件的好处,在转化成html 代码的时候,直接转化成模板里面的代码,就是模板里面写的是table 它就直接转化成table 没有自动生成的代码,不像DataList 他会自动生成一些代码

首先,要查数据库整行数据,就不能用ExecuteScalar,需要使用ExecuteReader活着干脆使用DataSet,都是可以的。

其次,如果使用DataSet,然后读取数据库每一行值绑定到datagridview

代码:

SqlConnection con = new SqlConnection("server=;uid=sa;database=TextProject");

SqlDataAdapter dr = new SqlDataAdapter("select from CTable",con);

DataSet ds = new DataSet();

drFill(ds,"CTable");

dataGridView1DataSource = dsTables["CTable"];

如果使用ExecuteReader,就需要遍历数据表每一行绑定到datagridview里:

代码:

SqlConnection con = new SqlConnection("server=;uid=sa;database=TextProject");

SqlCommond cmd = conCreatCommond();

cmdCommondText = "select from table1"; //查询数据库语句

SqlDataReader reader = cmdExecuteReader();

while(readerread())

{

//绑定数据到datagridview就可以了

}

可以看得出使用dataset绑定数据源比较简单,但是使用sqldatareader好控制。

// 获得数据写入text(主方法)

private void count(object sender, EventArgs e)

{

string str1 = "select from 表名 where 条件 ";//读取整张表

MySqlConnection coon = MySQLgetMySqlCon();//连接数据库,调方法

MySqlCommand mySqlCommand1 = MySQLgetSqlCommand(str1, coon);

coonOpen();

int record1 = MySQLgetResultCount(mySqlCommand1);

coonClose();

label1Text = record1ToString();

}

//建立执行命令的语句对象

public static MySqlCommand getSqlCommand(String sql, MySqlConnection mysql)

{

MySqlCommand mySqlCommand = new MySqlCommand(sql, mysql);

return mySqlCommand;

}

//查询记录数

public static int getResultCount(MySqlCommand mySqlCommand)

{

MySqlDataReader reader = mySqlCommandExecuteReader();

int result = 0;

try

{

while (readerRead())

{

if (readerHasRows)

{

result = result + 1;

}

}

}

catch (Exception)

{

}

finally

{

readerClose();

}

return result;

}

//此方法连接数据库

public static MySqlConnection getMySqlCon()

{

String mysqlStr = "Database=test3;Data Source=127001;User Id=root;Password=123456;pooling=false;CharSet=utf8;port=3306;Allow Zero Datetime=True";

MySqlConnection mysql = new MySqlConnection(mysqlStr);

return mysql;

}

影响显示记录行数的关键条件:

While ((Repeat1__numRows <> 0) AND (NOT dastEOF))

Repeat1__numRows <> 0

NOT dastEOF

其中下面的 Repeat1__numRows=Repeat1__numRows-1 这行代码的影响就是,每显示一行,其值就减1, 因为你提供的代码没显示他初始值是多少,如果是1的话, 那只能显示一行。 如果是10的话, 那应该不存在问题。

其实你提供的代码没有查询的SQL相关语句,不知道具体的SQL语句是什么?

select [top x] from where 有没有带 top x,这里有 top x 就是显示几行记录

ConsumeTime between cast(GetDate()-05 as int) and GetDate()

GetDate()是现在系统时间

GetDate()-05是12小时前的时间

所以你上边的sql语句是查询时间以前12个小时的数据,如果想查询固定的早上或者中午的数据,如果是通过sql查询分析器则可以直接把查询时间段替换一下即可

如查询今天中午的可以用

ConsumeTime between 2008-10-21 8:00:00 and 2008-10-21 14:00:00

,如果是别的软件,可以把ConsumeTime后的条件设置为参数,当选择早上时就查询1900-1-1 1900-1-1 8:00:00 之间的数据,当查询中午 就把参数替换为1900-1-1 8:00:00 1900-1-1 14:00:00 ,日期肯定要换,时间就设置成固定就可以了

以上就是关于数据库记录怎样显示在Table中(c#)全部的内容,包括:数据库记录怎样显示在Table中(c#)、数据库中查询的记录怎么显示在datagridview中用的是VB 2008 SQLserver、C#中查询数据库中记录个数并显示。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9298719.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存