1、导入命名空间
using System.Data.SqlClient; //连接SQLServer 数据库专用
2、创建连接
SqlConnection lo_conn = New SqlConnection("Server=服务器名字或IP;Database=数据库名字;uid=用户名;pwd=密码");
3、打开连接,第2步并没有真正连接数据库
lo_conn.Open(); //真正与数据库连接
4、向数据库发送SQL命令要使用SqlCommand:
SqlCommand lo_cmd = new SqlCommand(); //创建命令对象
lo_cmd.CommandText = "这里是SQL语句"; //写SQL语句
lo_cmd.Connection = lo_con; //指定连接对象,即上面创建的
5、处理SQL命令或返回结果集
lo_cmd.ExecuteNonQuery(); //这个仅仅执行SQL命令,不返回结果集,实用于建表、批量更新等不需要返回结果的操作。
SqlDataReader lo_reader = lo_cmd.ExecuteReader();//返回结果集
6、以数据集的方式反回结果集
SqlDataAdapter dbAdapter = new SqlDataAdapter(lo_cmd); //注意与上面的区分开
DataSet ds = new DataSet(); //创建数据集对象
dbAdapter.Fill(ds); //用返回的结果集填充数据集,这个数据集可以被能操作数据的控件DataBind,其它的就自己发挥了吧
7、关闭连接
lo_conn.Close();
我把我自己写的一个连库的程序全都加上了注释,我想这样你只要仔细看的话,一定能看明白的,写的很细。。代码如下:
//导入系统命名空间
using System;
//导入命名空间sc.state 会用到枚举,在此命名空间中
using System.Data;
//连接并操作数据库,使用此命名空间
using System.Data.SqlClient;
namespace program
{
class wangjun
{
static voidMain(string[] args)
{
//新建连接对象sc
SqlConnection sc = new SqlConnection();
//设置Sc连接数据对象的连接字符串值
sc.ConnectionString = "server=.;database=wangjun;uid=sa;pwd=sqlserver";
try
{
//打开数据库连接
sc.Open();
//添加数据库命令字符串
string sql = "select * from wj,wj2,wj3 where wj.name=wj2.name and wj2.name=wj3.name";
//新建数据库对象cmd 对象的参数是(数据库命令字符串,连接对象)(sql,sc)
SqlCommand cmd = new SqlCommand(sql,sc);
//新建sqldatareader对象rr以获取当前记录,cmd.executereader()方法从数据库得到sqldatareader类型数据集
SqlDataReader rr = cmd.ExecuteReader();
//通过sqldatareader的方法.read()读取记录,每次读一行,如果读完会返回false,结束循环
while (rr.Read())
{
//开始内部循环打印出rr对象的每一列
for (int i = 0; i < rr.FieldCount; i++)
{
Console.Write(rr[i].ToString() + " ");
}
//打印一列后,换行
Console.WriteLine();
}
}
//如果出现错误,会跳转到这里
catch (SqlException sqle)
{
//如果上面的操作出现错误,会有下面提示
Console.WriteLine("出现错误:" + sqle.Message);
}
finally
{
//如果数据库已经打开
if (sc.State==ConnectionState.Open)
{
//关闭数据库
sc.Close();
}
}
}
}
}
别人怎么说,怎么做,没办法的事,我自己要明白该怎么办。