操作SQL数据库之前,我们先配置好SQL server服务器(我用了一台单独的电脑作为服务器,为测试数据库的远程连接)
1.SQL server外围应用配置器->服务和连接的外围应用配置器->Database Engine下远程连接 ->打开本地连接和远程连接
2.打开SQL server Management,以本地windows账户登陆,连接后在对象资源管理器根节点上点右键->属性->安全性->服务器身份验证选择SQL server和windows双模式,在“连接”中打开“允许远程连接此服务器”。
3.对象资源管理器->安全性->登录名->sa用户的属性配置密码及状态 允许连接数据库引擎和启用登陆。
4.打开 SQL server Configuration Manager 网络配置启用TCP/IP协议
5.在服务中启用SQL server(SQLEXPRESS)和SQL server Browser两个服务
C#操作SQL数据库实例(增、删、改、查询)
1.SQL数据库的两种验证连接方式
/// <summary>
/// 返回连接数据库对象
/// </summary>
/// <returns></returns>
private SqlConnection GetConnection()
{
string sql_con = @"server=192.168.0.106;database=person;uid=sa;pwd=123"; //SQL身份验证
string window_con = @"server=.;database=person;Trusted_Connection=true"; //windows身份验证
return new SqlConnection(sql_con);//这里我们用SQL身份验证
}
2.SQL数据库的增加记录
/// <summary>
/// 添加联系人和电话
/// </summary>
/// <param name="instance"></param>
public void Add(Instance instance)
{
SqlConnection scon = GetConnection(); //SQL连接方式
try {
scon.Open(); //打开数据库
SqlCommand cmd = new SqlCommand("insert into tb_friend(names,phone) values(@names,@phone)",scon); //这里为插入姓名和电话两个参数
cmd.Parameters.Add("@names",SqlDbType.VarChar).Value=instance.Name; //添加参数并赋值
cmd.Parameters.Add("@phone", SqlDbType.VarChar).Value = instance.Phone;
cmd.ExecuteNonQuery(); //执行SQL命令
}
catch { }
finally
{
if(scon.State==ConnectionState.Open)
{
scon.Close();
}
}
}
3.SQL 数据库的删除记录
/// <summary>
/// 删除联系人
/// </summary>
/// <param name="name"></param>
public void Remove(string name)
{
SqlConnection scon = GetConnection();
try
{
scon.Open();
SqlCommand cmd = new SqlCommand("delete from tb_friend where names=@names", scon);
cmd.Parameters.Add("@names", SqlDbType.VarChar).Value = name;
cmd.ExecuteNonQuery();
}
catch
{
}
finally
{
if (scon.State == ConnectionState.Open)
{
scon.Close();
}
}
}
4.SQL 数据库修改记录
/// <summary>
/// 更新修改记录
/// </summary>
/// <param name="instance"></param>
public void Update(Instance instance)
{
SqlConnection scon = GetConnection();
try
{
scon.Open();
SqlCommand cmd = new SqlCommand("update tb_friend set phone=@phone where names=@names", scon);
cmd.Parameters.Add("@names", SqlDbType.VarChar).Value = instance.Name;
cmd.Parameters.Add("@phone", SqlDbType.VarChar).Value = instance.Phone;
cmd.ExecuteNonQuery();
}
catch
{
}
finally
{
if (scon.State == ConnectionState.Open)
{
scon.Close();
}
}
}
5.SQL 数据库查询记录
/// <summary>
/// 返回联系人集合
/// </summary>
/// <param name=""></param>
/// <returns></returns>
private List<Instance> GetList(SqlDataReader sqlDataReader)
{
List<Instance> lit = new List<Instance>();
//遍历sqlDataReader对象
while (sqlDataReader.Read())
{
lit.Add(new Instance() { Name = sqlDataReader[0].ToString(), Phone = sqlDataReader[1].ToString() });
}
return lit;
}
/// <summary>
/// 查询返回所有记录
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
public List<Instance> Select()
{
SqlConnection scon = GetConnection();
try
{
scon.Open();
SqlCommand cmd = new SqlCommand("select * from tb_friend", scon);
return GetList(cmd.ExecuteReader());
}
catch
{
return null;
}
finally
{
if (scon.State == ConnectionState.Open)
{
scon.Close();
}
}
}
本文详细介绍如何配置SQL Server服务器以支持远程连接,包括开启服务、设置登录权限和启用TCP/IP协议等步骤。同时,提供了使用C#进行SQL数据库操作的具体实例,涵盖连接、增删改查等基本操作。
1910

被折叠的 条评论
为什么被折叠?



