一个简单的通讯录管理系统,适合毕业设计。
主要实现以下功能
1.系统登录
2.增加联系人
3.修改和删除联系人
4.查找联系人
5.系统用户管理
我这边使用的版本是sqlserver2014
创建两个表一个是用户表。另外一个是联系人表
用户表包含了用户名,用户密码,联系人最大值,组别最大值代码如下
CREATE TABLE Users
(
UserName VARCHAR(50),--用户名
Password VARCHAR(50),--用户密码
ContactMax INT,
GroupMax INT
)
然后创建联系人表格包含了基本的信息,其中id的PRIMARY KEY设置为主键,IDENTITY(1,1)设置为自动增长,代码如下
CREATE TABLE Contacts
(
Id INT PRIMARY KEY IDENTITY(1,1),
UserName VARCHAR(50),
Groups VARCHAR(50),
Name VARCHAR(50),
WorkUnit VARCHAR(200),
Phone VARCHAR(200),
Email VARCHAR(200),
Photo IMAGE
)
还需要插入一条管理员账号。这样子就可以使用这个账号进行登录
INSERT INTO dbo.Users
( UserName ,
Password ,
ContactMax ,
GroupMax
)
VALUES ( 'admin' , -- UserName - varchar(50)
'' , -- Password - varchar(50)
10, -- ContactMax - int
10 -- GroupMax - int
)
好了数据库就已经搭建好了那么就可以开始编写程序呢
1.创建一个登录界面frmLogin和一个主界面frmMain
2.创建一个数据库帮助类Sqlhelp用来实现数据库操作代码如下
public static class SqlHelp
{
static string sqlconn = "server=.;DataBase=addressbook;Integrated Security =true;enlist=false";
/// <summary>
/// 根据sql语句获得数据库第一行第一列
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static object ExecuteScalar(string sql)
{
SqlConnection conn = new SqlConnection(sqlconn);
SqlCommand cmd = new SqlCommand(sql,conn);
conn.Open();
object o = cmd.ExecuteScalar();
conn.Close();
return o;
}
/// <summary>
/// 根据sql语句返回受影响的行数
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static int ExecuteNonQuery(string sql)
{
SqlConnection conn = new SqlConnection(sqlconn);
SqlCommand cmd = new SqlCommand(sql, conn);
conn.Open();
int o = cmd.ExecuteNonQuery();
conn.Close();
return o;
}
/// <summary>
/// 根据sql语句返回受影响的行数
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static DataTable GetDataTable(string sql)
{
SqlConnection conn = new SqlConnection(sqlconn);
SqlCommand cmd = new SqlCommand(sql, conn);
conn.Open();
DataTable dt = new DataTable();
SqlDataAdapter sda = new SqlDataAdapter(cmd);
sda.Fill(dt);
conn.Close();
return dt;
}
}
3.在创建好的登录窗口上拖放控件实现用户名和密码以及登录按钮
点击登录按钮的时候执行sql语句查询账号和密码是否正确
/// <summary>
/// 登录按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
if (txtUser.Text == "")
{
MessageBox.Show("请输入用户名");
}
else
{
//判断账号和密码是否正确
string sql = "select count(1) from Users where UserName='" + txtUser.Text + "' and PassWord='" + txtPwd.Text + "'";
if (Convert.ToInt32(SqlHelp.ExecuteScalar(sql)) > 0)
{
frmMain.User = txtUser.Text;
this.DialogResult = DialogResult.OK;
}
else
{
MessageBox.Show("用户名或者密码错误");
}
}
}
this.DialogResult=DialogResult.OK是将登录窗体的返回值定义为OK
返回成功之后那么就要打开主界面了。
4.修改Program类实现登录成功打开主窗体
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
frmLogin frm = new frmLogin();
frm.ShowDialog();
if (frm.DialogResult == DialogResult.OK)
{
Application.Run(new frmMain());
}
}
5.在主界面上增加菜单栏。以及两个listview
手机扫一扫
移动阅读更方便
你可能感兴趣的文章