c#图书管理系统

通过C#设计图书管理系统来实现对图书的借阅和归还操作。同时使用数据库存放数据或使用集合来编写。

借阅图书界面,连上,借出图书,库存量随之减少 。

若借阅某本图书,其接到最后库存为零,则会提示库存不足,联系管理员加。

以下是代码:

namespace WindowsFormsApp2
{
    public partial class Borrow : Form
    {
        public Borrow()
        {
            InitializeComponent();
            Table();
            
        }
        public void Table()//从数据库读取数据显示在表格的控件当中
        {
            dataGridView1.Rows.Clear();//每次输入前,清楚控件中已有旧数据
            Dao dao = new Dao();
            string sql = "select *from t_book";
            IDataReader dc = dao.read(sql);
            while (dc.Read())
            {
                dataGridView1.Rows.Add(dc[0].ToString(), dc[1].ToString(), dc[2].ToString(), dc[3].ToString(), dc[4].ToString(), dc[5].ToString());
            }
            dc.Close();
            dao.DaoClose();
        }
        private void label2_Click(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            string id = dataGridView1.SelectedRows[0].Cells[0].Value.ToString();//获取书号
            int number = int.Parse(dataGridView1.SelectedRows[0].Cells[4].Value.ToString());//获取库存
            if (number < 1)
            {
                MessageBox.Show("库存不足");
                MessageBox.Show("请联系管理员");
            }
            else
            {
                string sql = $"insert into t_borrow([uid],bid,[datetime])values('{Data.UID}','{id}',getdate());update t_book set number=number-1 where id='{id}'";
                Dao dao = new Dao();
                if (dao.Execute(sql) > 1)//执行两条sql语句才成功
                {
                    MessageBox.Show($"用户{Data.Uname}借出了图书{id}!");
                }
            }
            Table();
        }

        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            label2.Text = dataGridView1.SelectedRows[0].Cells[0].Value.ToString() + dataGridView1.SelectedRows[0].Cells[1].Value.ToString();//默认选中第一行
        }
    }
}

归还图书界面,借出书目编号依次递增,表中显示所借所有书目名称,然后选中需要归还的图书,归还,借书界面的库存也会增加。

以下是代码:

namespace WindowsFormsApp2
{
    public partial class Back : Form
    {
        public Back()
        {
            InitializeComponent();
            Table();
        }
        public void Table()//从数据库读取数据显示在表格的控件当中
        {
            dataGridView1.Rows.Clear();//每次输入前,清楚控件中已有旧数据
            Dao dao = new Dao();
            string sql = $"select [No],[bid],[datetime] from t_borrow where [uid]='{Data.UID}'";
            IDataReader dc = dao.read(sql);
            while (dc.Read())
            {
                dataGridView1.Rows.Add(dc[0].ToString(), dc[1].ToString(), dc[2].ToString());
            }
            dc.Close();
            dao.DaoClose();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            string No = dataGridView1.SelectedRows[0].Cells[0].Value.ToString();//获取借书编号
            string id = dataGridView1.SelectedRows[0].Cells[1].Value.ToString();//获取书号
            string sql = $"delete from t_borrow where [No] = {No}; update t_book set number = number + 1 where id = '{id}'";
            Dao dao = new Dao();
            if(dao.Execute(sql)>1)
            { 
                MessageBox.Show("归还成功");
                Table();
            }
           
        }
  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值