C#每天抄一点(33):数据库信息记录单
30 Oct 2011我想贴Jeon Soo Yeon的版本,晶莹剔透的声音。但虾米没有,另寻列侬原唱,带着特有的发黄的音色,心里一阵悸动,眼睛有点湿润的感觉。
OleDbDataAdapter.Fill 方法
OleDbDataAdapter.Fill (Int32, Int32, DataTable[])
在 DataTable 中添加或刷新行以匹配使用 DataTable 名称、指定的 SQL SELECT 语句和 CommandBehavior 的数据源中的行。
其他各种重载方法 MSDN
代码注释里边有几个地方时我猜的,不一定正确。
001 /*
002 * 由SharpDevelop创建。
003 * 用户: Lazynight
004 * 日期: 2011/10/30
005 * 时间: 20:12
006 *
007 * 要改变这种模板请点击 工具|选项|代码编写|编辑标准头文件
008 */
009 using System;
010 using System.Collections.Generic;
011 using System.Drawing;
012 using System.Windows.Forms;
013 using System.Data;
014 using System.Data.OleDb;
015
016 namespace Lazy33_数据库信息记录单
017 {
018
019 public partial class MainForm : Form
020 {
021 OleDbConnection Olecon;
022 OleDbDataAdapter OleDat;
023 DataTable dt;
024 int MaxValue = ;
025 int State = 1;
026 string ConStr;
027 public MainForm()
028 {
029 InitializeComponent();
030 }
031 private void showInfo(int first ,int next)
032 {
033 dt = new DataTable();
034 //定义DataTable对象实例
035 OleDat = new OleDbDataAdapter(“select * from LazyData”, ConStr);
036 //Select查询语句
037 OleDat.Fill(first, next, dt);
038 //调用Fill方法, DataSet中添加或刷新行
039 this.textBox1.Text = dt.Rows[][1].ToString();
040 //第一行第一列
041 this.textBox2.Text = dt.Rows[][2].ToString();
042 //第一行第二列
043 this.textBox3.Text = dt.Rows[][3].ToString();
044 //第一行第三列
045 this.textBox4.Text = dt.Rows[][4].ToString();
046 //第一行第四列
047 this.textBox5.Text = dt.Rows[][5].ToString();
048 //第一行第五列
049 }
050 void Button1Click(object sender, EventArgs e)
051 {
052 showInfo(, 1);
053 //调用showInfo函数,显示第一行,next为1,即第二行
054 State = 1;
055 }
056
057 void Button2Click(object sender, EventArgs e)
058 {
059 if (State <= 1)
060 {
061 MessageBox.Show(“已经是第一条记录”, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
062 //提示对话框
063 }
064 else
065 {
066 showInfo(State - 1, State);
067 //调用showInfo函数,显示第State – 1行,下一行为state
068 State = State - 1;
069 }
070 }
071
072 void Button3Click(object sender, EventArgs e)
073 {
074 if (State >= MaxValue)
075 {
076 MessageBox.Show(“已经是最后一条记录”, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
077 //提示对话框
078 }
079 else
080 {
081 showInfo(State, State + 1);
082 //调用showInfo函数
083 State = State + 1;
084 }
085 }
086
087 void Button4Click(object sender, EventArgs e)
088 {
089 showInfo(MaxValue - 1, MaxValue);
090 //调用showInfo函数
091 State = MaxValue;
092 }
093
094 void Button5Click(object sender, EventArgs e)
095 {
096 this.Close();
097 }
098
099 void MainFormLoad(object sender, EventArgs e)
100 {
101 //连接数据库的路径及数据库名
102 string strPath = Application.StartupPath + “\\Lazy_Data.accdb”;
103 //生成连接数据库字符串
104 ConStr = “Provider=Microsoft.ACE.OLEDB.12.0; Data source=” + strPath;
105 Olecon = new OleDbConnection(ConStr);
106 Olecon.Open();
107 //创建OleDbConnection对象实例并打开
108 MaxValue = Convert.ToInt32(new OleDbCommand(“select Count(*) from LazyData”, Olecon).ExecuteScalar());
109 //利用OleDbCommand对象实例得到数据库表中记录总数
110 Olecon.Close();
111 //关闭OleDbConnection对象实例
112 showInfo(, 1);
113 //调用showInfo函数
114 }
115 }
116 }
002 * 由SharpDevelop创建。
003 * 用户: Lazynight
004 * 日期: 2011/10/30
005 * 时间: 20:12
006 *
007 * 要改变这种模板请点击 工具|选项|代码编写|编辑标准头文件
008 */
009 using System;
010 using System.Collections.Generic;
011 using System.Drawing;
012 using System.Windows.Forms;
013 using System.Data;
014 using System.Data.OleDb;
015
016 namespace Lazy33_数据库信息记录单
017 {
018
019 public partial class MainForm : Form
020 {
021 OleDbConnection Olecon;
022 OleDbDataAdapter OleDat;
023 DataTable dt;
024 int MaxValue = ;
025 int State = 1;
026 string ConStr;
027 public MainForm()
028 {
029 InitializeComponent();
030 }
031 private void showInfo(int first ,int next)
032 {
033 dt = new DataTable();
034 //定义DataTable对象实例
035 OleDat = new OleDbDataAdapter(“select * from LazyData”, ConStr);
036 //Select查询语句
037 OleDat.Fill(first, next, dt);
038 //调用Fill方法, DataSet中添加或刷新行
039 this.textBox1.Text = dt.Rows[][1].ToString();
040 //第一行第一列
041 this.textBox2.Text = dt.Rows[][2].ToString();
042 //第一行第二列
043 this.textBox3.Text = dt.Rows[][3].ToString();
044 //第一行第三列
045 this.textBox4.Text = dt.Rows[][4].ToString();
046 //第一行第四列
047 this.textBox5.Text = dt.Rows[][5].ToString();
048 //第一行第五列
049 }
050 void Button1Click(object sender, EventArgs e)
051 {
052 showInfo(, 1);
053 //调用showInfo函数,显示第一行,next为1,即第二行
054 State = 1;
055 }
056
057 void Button2Click(object sender, EventArgs e)
058 {
059 if (State <= 1)
060 {
061 MessageBox.Show(“已经是第一条记录”, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
062 //提示对话框
063 }
064 else
065 {
066 showInfo(State - 1, State);
067 //调用showInfo函数,显示第State – 1行,下一行为state
068 State = State - 1;
069 }
070 }
071
072 void Button3Click(object sender, EventArgs e)
073 {
074 if (State >= MaxValue)
075 {
076 MessageBox.Show(“已经是最后一条记录”, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
077 //提示对话框
078 }
079 else
080 {
081 showInfo(State, State + 1);
082 //调用showInfo函数
083 State = State + 1;
084 }
085 }
086
087 void Button4Click(object sender, EventArgs e)
088 {
089 showInfo(MaxValue - 1, MaxValue);
090 //调用showInfo函数
091 State = MaxValue;
092 }
093
094 void Button5Click(object sender, EventArgs e)
095 {
096 this.Close();
097 }
098
099 void MainFormLoad(object sender, EventArgs e)
100 {
101 //连接数据库的路径及数据库名
102 string strPath = Application.StartupPath + “\\Lazy_Data.accdb”;
103 //生成连接数据库字符串
104 ConStr = “Provider=Microsoft.ACE.OLEDB.12.0; Data source=” + strPath;
105 Olecon = new OleDbConnection(ConStr);
106 Olecon.Open();
107 //创建OleDbConnection对象实例并打开
108 MaxValue = Convert.ToInt32(new OleDbCommand(“select Count(*) from LazyData”, Olecon).ExecuteScalar());
109 //利用OleDbCommand对象实例得到数据库表中记录总数
110 Olecon.Close();
111 //关闭OleDbConnection对象实例
112 showInfo(, 1);
113 //调用showInfo函数
114 }
115 }
116 }
转载请注明:于哲的博客 » C#每天抄一点(33):数据库信息记录单