五、库存查询功能的完善

一、数据库的建立

由于查询功能和之前的 入库管理功能 所用的数据库都一样,这里仍使用yy_textile表
在fiber_yy数据库下创建yy_textile表在这里插入图片描述
在这里插入图片描述
初始数据库信息
在这里插入图片描述

二、页面的完善

登录注册页面我就不演示了,前几篇博文也都有介绍

query查询页面
在这里插入图片描述
main_page页面进行功能完善
在这里插入图片描述

三、代码实现

query查询页面

using System;
using System.IO;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.Sql;
using System.Data.SqlClient;

namespace fiber_yy
{
    
    
    public partial class query : Form
    {
    
    
        private DataSet dsall;
        public string constr = "server=CY-20190824RMES;Initial Catalog=fiber_yy;User ID=sa;pwd=beyond";
        private SqlDataAdapter mDataAdapter;

        public query()
        {
    
    
            InitializeComponent();
            comboBox1.Items.Add("根据面料名称查询");
            comboBox1.Items.Add("根据品号查询");
        }

        private void button1_Click(object sender, EventArgs e)
        {
    
    
            try
            {
    
    
                SqlConnection conn = new SqlConnection(constr);
                conn = new SqlConnection(constr);
                mDataAdapter = new SqlDataAdapter("SELECT name AS '纺织品名称',number AS '纺织品品号',warp_density AS '经密度' ,weft_density AS '纬密度',warp_linear_density AS '经纱线密度',weft_linear_density AS '纬纱线密度',material AS '原料成分',square_meter_weight AS '平方米重量',width_of_cloth AS '幅宽',horse_length AS '匹长',organization AS '所用组织',stock AS '库存量' FROM yy_textile", conn);
                dsall = new DataSet();
                mDataAdapter.Fill(dsall, "hard");
                dataGridView1.DataSource = dsall.Tables["hard"];
            }
            catch 
            {
    
    
                MessageBox.Show("读取失败,请检查是否存在该织物");
            }

            
        }

        private void button2_Click(object sender, EventArgs e)
        {
    
    
            this.Hide();
            new main_page().Show();
        }

        private void button3_Click(object sender, EventArgs e)
        {
    
    
            try
            {
    
    
                string model = comboBox1.SelectedItem.ToString();
                string command = textBox1.Text;
                

                byte[] MyData = new byte[0];
                SqlConnection conn = new SqlConnection(constr);
                conn.Open();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = conn;
                //cmd.CommandText = "select * from yy_textile where '" + model + "'='" + command + "'"; //sql语句按指定条件进行

                if (model == "根据面料名称查询")
                {
    
    
                    cmd.CommandText = "select * from yy_textile where name='" + command + "'";
                    model = "SELECT name AS '纺织品名称',number AS '纺织品品号',warp_density AS '经密度' ,weft_density AS '纬密度',warp_linear_density AS '经纱线密度',weft_linear_density AS '纬纱线密度',material AS '原料成分',square_meter_weight AS '平方米重量',width_of_cloth AS '幅宽',horse_length AS '匹长',organization AS '所用组织',stock AS '库存量' from yy_textile where name='" + command + "'";
                }
                if (model == "根据品号查询")
                {
    
    
                    cmd.CommandText = "select * from yy_textile where number='" + command + "'";
                    model = "SELECT name AS '纺织品名称',number AS '纺织品品号',warp_density AS '经密度' ,weft_density AS '纬密度',warp_linear_density AS '经纱线密度',weft_linear_density AS '纬纱线密度',material AS '原料成分',square_meter_weight AS '平方米重量',width_of_cloth AS '幅宽',horse_length AS '匹长',organization AS '所用组织',stock AS '库存量' from yy_textile where number='" + command + "'";
                }



                SqlDataReader sdr = cmd.ExecuteReader();
                sdr.Read();
                object o = sdr["picture"];
                MyData = (byte[])sdr["picture"];//读取第一个图片的位流
                MemoryStream memoryStream = null;
                memoryStream = new MemoryStream(MyData);
                pictureBox1.Image = Image.FromStream(memoryStream);//将图片赋给pictureBox1控件
                MessageBox.Show("读取成功");

                
                conn = new SqlConnection(constr);
                mDataAdapter = new SqlDataAdapter(model, conn);
                
                dsall = new DataSet();
                mDataAdapter.Fill(dsall, "hard");
                dataGridView1.DataSource = dsall.Tables["hard"];


            }
            catch
            {
    
    
                MessageBox.Show("读取失败,请检查是否存在该织物");
            }
        }
    }
}

main_page页面

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace fiber_yy
{
    
    
    public partial class main_page : Form
    {
    
    
        public main_page()
        {
    
    
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
    
    
            MessageBox.Show("退出成功");
            this.Close();
            new Form1().Show();
        }

        private void button2_Click(object sender, EventArgs e)
        {
    
    
            this.Close();
            new warehousing().Show();
        }

        private void button3_Click(object sender, EventArgs e)
        {
    
    
            this.Close();
            new shipment().Show();
        }

        private void button4_Click(object sender, EventArgs e)
        {
    
    
            this.Close();
            new query().Show();
        }
    }
}


四、效果演示

程序运行
在这里插入图片描述
注册我就不演示了,请参考前几篇博文
yy_user表中找个账号密码,直接用户登录
在这里插入图片描述
在这里插入图片描述
登录成功
在这里插入图片描述
进入系统
在这里插入图片描述

演示库存查询

在这里插入图片描述
在这里插入图片描述
查阅所含全部织物信息
在这里插入图片描述
精确查找

根据面料名称查询
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

根据品号查询
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_41264055/article/details/125250965