您的位置:首页 > 编程语言

2009-08-23 22:57 写给初学ado.net编程的朋友们(最基础)

2013-06-05 16:34 351 查看
using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SqlClient;
using System.Data;

//首先要引进两个命名空间 System.Data.sqlClient 以及System.Data 这里有着操作数据库的类

namespace ado
{
class Program
{
static void Main(string[] args)
{

//既然要操作数据库 ,那么首先就要连接数据库。怎么连接呢? 首先构造连接字符串;

//对于不同的得数据库有着不同的连接方式,对于同一种数据库,其实也有不同种的连接字符串;

//我们构造一个最简单的,就是下面的字符串了。这是以sql server 身份进行验证的。具体含义应该不用我说了吧。
string connectionString = "Server=服务器名; DataBase=数据库名; uid=用户ID;pwd=用户密码";

//下面我们构造一个最简单的SQL语句,用于测试数据库操作;
string selectString = "Select * from userInfo Where name Like '%er'";

//建立连接数据库对象 Sqlconnection,这里是利用构造函数传递连接字符串,也可以用conn的ConnectionString 属性进行连接字符串的设置。
SqlConnection conn = new SqlConnection(connectionString);
try
{
conn.Open();//打开数据库连接

if (conn.State==ConnectionState.Open)// 判断当前连接对象状态
{
Console.WriteLine("连接数据库成功!");

//我们定义一个sqlcommand对象用来操作数据库;必须要传递给这个对象两个参数。即连接对象以及要SQL语句字符串

SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = selectString;

//SqlCommand 对象有4个执行数据库操控函数分别是

//这里我们用返回一个SqlDataReader 其他的 大家可以查一下MSDN
SqlDataReader reader = null;
reader = cmd.ExecuteReader();

while(reader.Read())
{
Console.WriteLine("{0}\t{1}\t{2}",reader[1].ToString(),reader[2].ToString(),reader[3].ToString());
}

reader.Close();//这里要强调一下SqlDataReader对象是独自占有数据库连接,即只要该对象不关闭,其他操作无法进行。

SqlDataAdapter ada = new SqlDataAdapter();
ada.SelectCommand = cmd;
SqlCommandBuilder scb = new SqlCommandBuilder(ada);//这里建立SqlCommandBuilder对象可以自动翻译sql语句,而不用再手动添加类似InsertCommand的东西了;
DataTable ds = new DataTable();
ada.Fill(ds);//Adapter最有用的方法之一就是fill,把数据放入DataSet 或者是DataTable

//这里可以添加一些对于ds内数据的修改,例如ds.Tables[0].Rows[0]["Name"]='Peter';

ada.Update(ds);//Adapter 另一个关键方法就是update,返回所作修改,更新数据库。
}
else
{
Console.WriteLine("连接数据库失败!");
}

}
catch (System.Exception e)
{
Console.WriteLine(e.Message);
}
finally
{
conn.Close();
if (conn.State==ConnectionState.Closed)
{
Console.WriteLine("关闭数据库成功!");
}

}

}
}
}

PS:这里我只是介绍了一下简单的ado.net数据库操作。为了使初学者能够尽快理解流程,其实我也是初学者。呵呵 ,大家有任何意见,都可以提的。洗耳恭听之。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: