Как мы можем сделать сумму данных из таблицы данных SQL и отобразить значение суммы человеку в datagridview
вот моя таблица данных SQL и таблица Datagridview, я хочу получить итоговое значение человека, указанного в таблице базы данных, и отобразить его в datagridview.
я получаю только один человек, другие детали равны нулю без какой-либо ошибки. Не могли бы вы, пожалуйста, кто-нибудь помочь мне сделать это.
SQL DATA TABLE StaffId StaffName INRDrAmt INRCrAmt STF-01 Deepak Sasmal 5,000.00 0.00 STF-02 Abdul Vakil 3,000.00 0.00 STF-03 Arvind Soorma 7,000.00 0.00 STF-04 Anwar Khan 4,000.00 0.00 STF-05 Arvind Mohanty 1,000.00 0.00 STF-06 Raman Kumar 7,000.00 0.00 STF-01 Deepak Sasmal 9,000.00 0.00 STF-01 Deepak Sasmal 1,000.00 0.00 STF-01 Deepak Sasmal 0.00 11,000.00 STF-06 Raman Kumar 0.00 200.00 STF-02 Abdul Vakil 0.00 500.00 STF-03 Arvind Soorma 4,000.00 STF-03 Arvind Soorma 0.00 6,000.00 STF-04 Anwar Khan 1,000.00 0.00 STF-04 Anwar Khan 0.00 4,000.00 STF-04 Anwar Khan 0.00 1,500.00
DATA GRID VIEW StaffId StaffName Total DrAmt Total CrAmt Balance STF-01 Deepak Sasmal 15,000.00 11,000.00 4,000.00 STF-02 Abdul Vakil 0.00 0.00 0.00 STF-03 Arvind Soorma 0.00 0.00 0.00 STF-04 Anwar Khan 0.00 0.00 0.00 STF-05 Arvind Mohanty 0.00 0.00 0.00 STF-06 Raman Kumar 0.00 0.00 0.00
Что я уже пробовал:
Dim Cmd As New SqlClient.SqlCommand Dim Con As New SqlClient.SqlConnection Dim Rd As SqlDataReader Con.ConnectionString = "Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=dbase;Integrated Security=True;Pooling=False" Cmd.Connection = Con Con.Open() Dim Row As DataGridViewRow Dim Int As Integer Row = Clientconsole.Dgvcltconsole.Rows(Int) Cmd.CommandText = "Select [ClientName], ISNULL(Sum(INRCrAmt),0) as Credit, ISNULL(Sum(INRDrAmt),0) as Debit From ClientLdgr Where [ClientName]='" & Row.Cells(1).Value & "' GROUP BY [ClientName]" Rd = Cmd.ExecuteReader Rd.Read() If Rd.Read Then Row.Cells(2).Value = Rd.Item("Debit") Row.Cells(3).Value = Rd.Item("Credit") Row.Cells(4).Value = Rd.Item("Debit") - Rd.Item("Credit") Rd.Close() End If
Richard Deeming
Ваш код уязвим для SQL-инъекция[^]. НИКОГДА используйте конкатенацию строк для построения SQL-запроса. ВСЕГДА используйте параметризованный запрос.
Все, что вы хотели знать о SQL-инъекции (но боялись спросить) | Трой Хант[^]
Как я могу объяснить SQL-инъекцию без технического жаргона? | Обмен Стеками Информационной Безопасности[^]
Шпаргалка по параметризации запросов / OWASP[^]