net平台可以连接各类数据库,因为微软提供了连接各类数据库的类库
如果连接sqlserver数据库,那事先要引入System.Data.SqlClient命名空间
关键步骤是:
1、连接字符串(有很多种写法,比较推荐一下两种)
Data Source=服务器地址;Initial Catalog=数据库名称;User ID=登录名;pwd=登录密码
或
server=服务器地址;database=数据库名称;uid=登录名;pwd=登录密码
2、创建connection对象(记得引入命名空间System.Data.SqlClient)
SqlConnection conn = new SqlConnection(连接字符串);
3、打开数据库连接
conn.Open();
4、需要执行的sql语句
string sql="";
5、创建command对象,command对象来执行sql命令,需要两个参数sql语句以及创建的connection对象
SqlCommand comm = new SqlCommand(sql, conn);
6、调用command的各种方法
A、如果执行增、删、改功能,则调用command对象的ExecuteNonQuery()方法
int num=comm.ExecuteNonQuery();
返回值是受影响的行数,示例见图1
图1
B、如果sql命令执行的结果是一个值,则调用command的ExecuteScalar()方法
int iRet = (int)comm.ExecuteScalar();
因为返回值是object类型的,所以要根据sql语句的执行结果进行数据类型转换,示例见图2
图2
C、如果查询的结果是多行多列的数据,则需要调用command对象的ExecuteReader()方法
SqlDataReader data= comm.ExecuteReader();
返回值是SqlDataReader 类型的,下面需要查询出来的数据进行显示,需要使用data的Read()方法,
查询出来的数据很多,可以使用while循环读取
while (data.Read())
{
string name = data["StudentName"].ToString();//返回值是object类型的
或
string name1 = data[0].ToString();//data[索引] ,索引是查询出结果的索引从0开始
}
!!!注意:SqlDataReader 用完之后一定要记得关闭,示例见图3
data.Close();
7、对调用方法的返回结果进行处理
8、最后一定要记得关闭数据库
这里需要说明一个问题,如果显示数据库和数据库操作不在同一个类中,如果查询多个数据,关闭数据库后SqlDataReader 将无法使用,在业务类中也无法关闭数据库了,此时可以用 comm.ExecuteReader(CommandBehavior.CloseConnection);
此时在关闭SqlDataReader的同时就可以将与之相关的数据库连接关闭,但是要记得引入System.Data命名空间,示例见图4
图4
领取专属 10元无门槛券
私享最新 技术干货