本文基于VS2015社区版
一:远程连接AZURE 数据库
自从2014年Windows Azure 在华商用以来,原来越多的企业和团队开始付费使用该服务,也就应运而生了一个新的问题:如何连接AZURE数据库?
获取连接该数据库的字段 点击数据库—>连接字符串 ;
//ConnectDB.cs
//面向对象
namespace LuckyGitlabStatWebAPI.DAO
{
public class ConnectDB
{
//数据库用户名
private static string userName = “”;
//数据库密码
private static string password = “”;
//连接的服务器地址
private static string dataSource = “”;
//数据库名称
private static string sampleDatabaseName = “”;
///
/// 公共代码,连接数据库
///
public SqlConnectionStringBuilder ConnectDataBase()
{
SqlConnectionStringBuilder connString2Builder;
connString2Builder = new SqlConnectionStringBuilder();
connString2Builder.DataSource = dataSource;
connString2Builder.InitialCatalog = sampleDatabaseName;
connString2Builder.Encrypt = true;
connString2Builder.TrustServerCertificate = false;
connString2Builder.UserID = userName;
connString2Builder.Password = password;
return connString2Builder;
}
}
}
SampleCOntroller.cs 方法调用查询
public List GetMembers()
{
try
{
SqlConnectionStringBuilder connString2Builder = conncetdb.ConnectDataBase();
using (SqlConnection conn = new SqlConnection(connString2Builder.ToString()))
{
using (SqlCommand command = conn.CreateCommand())
{
conn.Open();
command.CommandText = “SELECT * FROM Member”;
//ExecuteReader():将 CommandText 发送到 Connection,并生成 SqlDataReader。
using (SqlDataReader reader = command.ExecuteReader())
{
// Loop over the results
while (reader.Read())//SqlDataReader到下一个记录
{
string s = reader.ToString();
member.username = reader[“UserName”].ToString().Trim();
member.password = reader[“Password”].ToString().Trim();
member.email = reader[“Email”].ToString().Trim();
member.sex =reader[“Sex”].ToString().Trim();
members.Add(member);
}
}
conn.Close();
}
}
return members;
}
catch (SqlException e)
{
Console.WriteLine(“查找异常”);
}
return members;
}
再给大家分享一个控制台版的链接代码http://www.cuichongyang.cn/index.php/2016/05/13/net-code-azure-sql/
AZURE数据库虽好,但访问速度比较慢,一个简单的跳转就需要3S左右,所以我们就放弃AZURE,采用本地数据库SQL server
二、链接本地(远程)SQL server
在SQL server准备阶段,请先访问这篇博文 ,解决登陆和访问权限问题
步骤:
工具–>连接到数据库–>输入服务器名–>SQL Server身份验证–>输入用户名、密码(非sa)–>选择数据库–>测试链接–>高级–>复制最后一行输入框内的连接数据
在输入服务器名字时:
1. 本地:在登陆SQL server的页面复制服务器名字, 否则会显示 “用户名”无法连接
2.远程:输入服务器所在的IP
ConnectDB.CS
namespace LuckyGitlabStatWebAPI.DAO
{
public class ConnectLocalSQL
{
/// <summary>
/// 连接本地Sql Server数据库
/// </summary >
/// <returns></returns>
public SqlConnection ConnectDataBase()
{
//连接字符串用SQL Server身份验证的账户登录,不能用windows身份验证的用户 (<span style="color: #ff00ff;">密码需要手动填写</span>)
SqlConnection conn = new SqlConnection("Data Source=;Initial Catalog=;Persist Security Info=;User ID=;password=");
return conn;
}
}
} `</pre>
</div>
</div>
<pre>` public Member GetSingleInfo(string username)
{
//连接本地数据库
SqlConnection conn = connectLocaldb.ConnectDataBase();
//打开数据库
conn.Open();
//创建查询语句
SqlCommand querySingleInfo = conn.CreateCommand();
querySingleInfo.CommandText = "SELECT * FROM Member where UserName=" + "'" + username + "'";
SqlDataReader singleInfoReader = querySingleInfo.ExecuteReader();
//有多行数据,用while循环
while (singleInfoReader.Read())
{
member.username = singleInfoReader["UserName"].ToString().Trim();
member.password = singleInfoReader["Password"].ToString().Trim();
member.email = singleInfoReader["Email"].ToString().Trim();
member.sex = singleInfoReader["Sex"].ToString().Trim();
members.Add(member);
}
//关闭查询
singleInfoReader.Close();
//关闭数据库连接
conn.Close();
return member;
}