#vb.net #mysql-workbench
#vb.net #mysql-workbench
Вопрос:
Я пытаюсь создать простой запас инвентаря, и мне трудно получить базу оставшихся запасов на основе ввода и вывода из mysql.
Что мне действительно нужно, так это вычесть общее количество входных данных.количество — вывод.количество, где input.material равно output.material и если общее.количество ниже запасов безопасности, в datagridview строка будет выделена.
conn = New MySqlConnection
conn.ConnectionString = "server=localhost;userid=root;password=1234;database=inventory"
Dim searchquery As String = "Select input.DeliveryDate as 'Delivery Date',input.Material, (sum(input.Quantity) - sum(output.Quantity)) as 'Remaining Stocks' where rawmaterialsinput.Material = output.Material, safetystandard.safetystocks from inventory.input, inventory.output, inventory.safetystandard"
Dim commander As New MySqlCommand(searchquery, conn)
Dim adapter As New MySqlDataAdapter(commander)
inventorydata.Clear()
adapter.Fill(inventorydata)
inventoryDGV.DataSource = inventorydata
на данный момент я пытаюсь использовать эти коды, но надежды нет. Пожалуйста, помогите
Мне нужно иметь 4 столбца в datagridview с датой поставки, Сырьем, Оставшимися запасами, запасами безопасности.
Ответ №1:
conn.Open()
conn = New MySqlConnection
conn.ConnectionString = "server=localhost;userid=root;password=SOUTHEAST;database=reportingsystem"
Dim searchquery As String = "Select reportingsystem.rawmaterialswarehouseandrawmaterials.Rawmaterials as 'Raw Material', reportingsystem.rawmaterialswarehouseandrawmaterials.safetystocks as 'Safety Stocks', (select sum(reportingsystem.rawmaterialsinput.Quantity) - sum(reportingsystem.rawmaterialsoutput.Quantity) from reportingsystem.rawmaterialsinput, reportingsystem.rawmaterialsoutput where reportingsystem.rawmaterialsinput.RawMaterial = reportingsystem.rawmaterialswarehouseandrawmaterials.Rawmaterials ) as 'Remaining Stocks' from reportingsystem.rawmaterialswarehouseandrawmaterials" ' JOIN reportingsystem.rawmaterialsinput.RawMaterial ON reportingsystem.rawmaterialswarehouseandrawmaterials.Rawmaterials = reportingsystem.rawmaterialsinput.RawMaterial ORDER BY reportingsystem.rawmaterialswarehouseandrawmaterials.Rawmaterials"
Dim commander As New MySqlCommand(searchquery, conn)
Dim adapter As New MySqlDataAdapter(commander)
monitoringdata.Clear()
adapter.Fill(monitoringdata)
MonitoringDGV.DataSource = monitoringdata
conn.close()
в этом коде выбрано только 3 столбца. Надеюсь, это поможет