Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 12.03.2022
Сообщений: 1
1

Перевод в банке

12.03.2022, 13:33. Показов 1133. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть база данных в банке.

В базе данных есть таблица со счетами (назовем её для простоты T).

В таблице T есть среди прочих поля:
N — Номер счета
S — сумма на счете
Требуется:
Написать хранимую процедуру на языке TSQL, которая:
1. Принимает в качестве аргументов параметры:
@N1 — номер первого счета
@N2 — номер второго счета
@S — сумма денежных средств

2. Переводит сумму @S с первого на второй счет, при это проверяя, достаточно ли средств на первом счете
3. Использует транзакцию при переводе с первого на второй счет .

Не получается, надо исправить ошибку.

T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Alter PROCEDURE TransferAmount(@N1 int,
@N2 int,
@S int
)
 
AS
BEGIN TRANSACTION
IF( @N1>=@S)
BEGIN
SET @N1=@N1-@S;
SET @N2=@N2+@S;
END;
COMMIT;
 
 
GO
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.03.2022, 13:33
Ответы с готовыми решениями:

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

Проценты в банке
День добрый. Я учусь кодить на С# и смотрю видеоуроки и делаю задание на одном из сайтов. И там...

Счет в банке
Вы открыли счет в банке. банк ежедневно начисляет процент от вклада, увеличивая сумму вклада....

Кредит в банке
Распишите пожалуйста, как решать эту задачу. Банк выдал кредит в сумме 250000 на 7 лет под 13%...

2
Эксперт Pascal/Delphi
1134 / 615 / 129
Регистрация: 13.02.2009
Сообщений: 3,553
12.03.2022, 20:42 2
Я думаю вот такого пример
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
create table T_tab(id int identity,
                   N_schet nvarchar(40), --Номер счета
                   Pasport_number nvarchar(40), -- Номер паспорта
                   Fio nvarchar(40) ,-- ФИО
                   S_Money money -- сумма на счете
                   );
----------------На пример есть 3 клиент---------------------------
insert into T_tab
output inserted.*
values (N'N456WG45P', N'1800546546', N'Васия Пупкин Александрович', 150000),
       (N'P776DSG45P', N'1877546546', N'Иванов Иване Иванович', 560000),
       (N'W346DSG45P', N'2089546546', N'Екатери́на Серге́евна Кищу́к', 900000)
 
-- Создать процедур перечисление суммы ПО "Номер паспорта"
 
alter proc TransferAmount 
(
 @From nvarchar(30),
 @To nvarchar(30),
 @Money money
)
as
begin
 update T_tab set S_Money = S_Money -@Money where Pasport_number =@From
 update T_tab set S_Money = S_Money +@Money where Pasport_number =@To 
end
 
--- Вызов процедур, Перечисление суммы от (Васия Пупкин Александрович) на уважаемого (Екатери́на Серге́евна Кищу́к)
exec TransferAmount @from=N'1800546546',
                    @To=N'2089546546',
                    @Money = 1000
---------Проверяем ---------
select * from T_tab
Цитата Сообщение от Nadukha Посмотреть сообщение
при это проверяя, достаточно ли средств на первом счете
Но для проверки можно написать триггер - как вариант ...
0
5395 / 4323 / 1060
Регистрация: 29.08.2013
Сообщений: 27,130
Записей в блоге: 3
13.03.2022, 10:54 3
Лучший ответ Сообщение было отмечено Nadukha как решение

Решение

Цитата Сообщение от Nadukha Посмотреть сообщение
Не получается, надо исправить ошибку.
Цитата Сообщение от Nadukha Посмотреть сообщение
IF( @N1>=@S)
а зачем ты номер счета сравниваешь с суммой?

номер счета, кстати, 20ти значное число и в INT не влезет

ты должна по номеру счета получить сумму на счете и ее уже сравнивать
1
13.03.2022, 10:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.03.2022, 10:54
Помогаю со студенческими работами здесь

Работа в Банке
В настоящий момент в коммерческий банк требуются специалисты банковских технологий. Программист...

Баксы в банке
Папа Карло подарил Буратино 1 доллар в его первый день рождения, а экономный Буратино сложил...

Кассир в банке
Условия постановки задачи: 1. Кассир – 1 чел. 2. Кассовый зал начинает работать с 8:00....

Вклад в банке
Банк предлагает два вида вкладов: под p1% на 3 месяца и под p2% на год. Какой из вкладов наиболее...

Счёт в банке
У банка есть клиенты. Каждый клиент имеет ровно один счет. Напишите программу, которая будет...

Регистрация клиентов в банке
написать программу "регистрация клиентов в банк" с помощью файла, например: 1. ФИО 2. дата...

Курс валют в банке
Реализовать программу, решающую следующую задачу: Одна запись в сводке о колебании банковского...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru