using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MySql.Data.MySqlClient;
using System.Data;
namespace dataset_Using
{
class Program
{
///
///
///
/// 表头集合
/// 每一行记录信息
static void ui(DataColumnCollection column, DataRowCollection rows)
{
//打印表头的信息
Console.WriteLine(" {0,-10} {1,-10}", column[1], column[2]);//打印account,和password
foreach (DataRow row1 in rows)
{
//
Console.WriteLine(" {0,-10} {1,-10}", row1[1], row1[2]);
}
}
static void add(DataRowCollection rows, DataRow dr)
{
try
{
rows.Add(dr);
Console.WriteLine("修改数据成功了!");
}
catch (Exception ex)
{
String message = ex.Message;
Console.WriteLine("修改数据失败了!" + message);
}
}
static void delete(DataRowCollection rows, int a)
{
try
{
rows[a].Delete();
Console.WriteLine("修改数据成功了!");
}
catch (Exception ex)
{
String message = ex.Message;
Console.WriteLine("修改数据失败了!" + message);
}
}
static void Main(string[] args)
{
//数据库
String mysqlStr = "Database=test1;Data Source=127.0.0.1;User Id=root;Password=123456;pooling=false;CharSet=utf8;port=3306";
MySqlConnection mysql = new MySqlConnection(mysqlStr);
//将account表中的数据全部提取出来。
String sqlSearch = "select * from account";
//数据库适配器
MySqlDataAdapter mysqlad = new MySqlDataAdapter(sqlSearch, mysql);
//执行完此语句之后,所有的数据库数据全在mysalad中
// MySqlCommand mySqlCommand = new MySqlCommand(sqlSearch, mysql);
mysql.Open();
DataSet ds = new DataSet();
mysqlad.Fill(ds, "Table1");//填充数据集ds的Table1表
//为适配器添加其需要的数据语句
MySqlCommandBuilder SCB = new MySqlCommandBuilder(mysqlad);
//添加下面两行来指定UpdateCommand和InsertCommand命令
/* mysqlad.UpdateCommand = SCB.GetUpdateCommand();
mysqlad.InsertCommand = SCB.GetInsertCommand();
mysqlad.DeleteCommand= SCB.GetDeleteCommand();*/
DataRow dr = ds.Tables["Table1"].NewRow();
//这里的dr和数据库表的行,对应是一样的。
dr[0] = "9";
dr[1] = "zzming";
dr[2] = "1234";
//DataRow指的是行类型
//行类型的集合为ds数据集里Table1表的所有行的信息
DataRowCollection rows = ds.Tables["Table1"].Rows;//所有accout表的信息
//表头的集合信息,每一行的信息
ui(ds.Tables["Table1"].Columns, ds.Tables["Table1"].Rows);
add(rows, dr);
// delete(rows,0);
mysqlad.Update(ds,"Table1");//对操作进行更新
ds.AcceptChanges();
// 表头集合类, 每一行行集合类
ui(ds.Tables["Table1"].Columns, ds.Tables["Table1"].Rows);
Console.Read();
mysql.Close();
}
}
}