Subit Timalsina Ответов: 1

Как отфильтровать данные в соответствии с выбранным выпадающим списком с помощью хранимой процедуры?


У меня есть таблицы базы данных : customer, customertranscations и transactions.
Я хочу создать выпадающий список с именем клиента, а затем при выборе конкретного клиента я хочу просмотреть информацию о покупке клиента, которую он приобрел в течение последних 31 дня. Я завершил часть запроса, но мне трудно понять, как это сделать.
Я хочу отобразить его в datagridview, но не использовать sqldatasource и использовать графический интерфейс visual studio для всего этого. Я хочу попробовать использовать хранимую процедуру.

Что я уже пробовал:

SELECT c.customer_id, c.name, t.transactions_date, t.payment_amount 
from customer c INNER JOIN customertranscations ct ON c.customer_id = ct.customer_id 
INNER JOIN transactions t on ct.transactions_id= t.transactions_id WHERE 
t.transactions_date >=DATEADD(DAY, -2, getdate() - 31 ) AND c.customer_id = 'cus1' 

1 Ответов

Рейтинг:
1

W∴ Balboos, GHB

Создание хранимой процедуры можно довольно быстро освоить на нужном вам уровне. Создание хранимой процедуры | Microsoft Docs[^]


Основной формат таков:

CREATE PROCEDURE SP_NAME_YOU_LIKE (
  @Declare_Input datatype, 
  @moreInput     datatype,
  etc.
)
AS
--  Your SQL Query of any sort.  Use the @values for controlling filters, 
such as
SELECT * FROM Some_Table WHERE colVal=@Declare_Input


Subit Timalsina

На самом деле я имел в виду, что могу выполнить хранимую процедуру, но я хочу знать, как это можно сделать из кода позади. я действительно запутался в этом

W∴ Balboos, GHB

C# имеет пространство имен для доступа к базам данных
- создайте запрос, вызывающий хранимую процедуру, и используйте его.
- когда результаты вернутся - делай с ними что хочешь.

Вы "хотите" много - ну, тогда начинайте искать, как это сделать! У вас есть удивительные ресурсы, доступные вам с помощью интернета. Я научился делать эти вещи из реальных книг - ограниченные ресурсы - и много решимости. Вам нужно приложить усилия - а это, как правило, тяжелая работа.

Кроме того, обратите внимание, что "c.customer_id = 'cus1' " в вашем запросе выше действительно ограничит ваши результаты!