SQL-запрос к MySQL Query - PullRequest
       2

SQL-запрос к MySQL Query

0 голосов
/ 07 сентября 2018

Ну, я смотрел видеоурок на YouTube о создании программы на c # и использовании базы данных. Парень использовал команды SQL, когда я использовал MySQL через phpmyadmin (XAMPP - это любовь).

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

create procedure datosfactura @NumFac int
as
select
F.*, D.PrecioVen, D.CanVe, C.Nom_cli, A.Nom_pro, D.PrecioVen * D.CanVe as importe
from
Facturas F inner join Detalles D on F.NunFac = D.NumFac
inner join Articula A on D.CodPro = A.id_pro
inner join Cliente C on F.CodCli = C.id_clientes
where F.NumFac = @NumFac

Я ломаю голову и пробовал разные способы, но я могу понять, что я делаю не так.

В действительности, если я сделаю новую команду MySQL, введя этот запрос, он вернет, что в первой строке есть ошибка.

Как правильно преобразовать этот SQL-запрос в MySQL? Спасибо за вашу помощь.

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Попробуйте это:

delimiter //
create procedure datosfactura(NumFac int)
begin
    select F.*, 
           D.PrecioVen, 
           D.CanVe, 
           C.Nom_cli, 
           A.Nom_pro, 
           D.PrecioVen * D.CanVe as importe
    from Facturas F 
    inner join Detalles D on F.NunFac = D.NumFac
    inner join Articula A on D.CodPro = A.id_pro
    inner join Cliente C on F.CodCli = C.id_clientes
    where F.NumFac = NumFac;
end//
delimiter ;

Полезные статьи:

http://www.mysqltutorial.org/getting-started-with-mysql-stored-procedures.aspx

https://dev.mysql.com/doc/refman/8.0/en/create-procedure.html

0 голосов
/ 07 сентября 2018

Может быть что-то вроде этого (сейчас у меня нет доступа к mysql)

delimiter $$
create function datosfactura(IN NumFac int)
BEGIN
select
F.*, D.PrecioVen, D.CanVe, C.Nom_cli, A.Nom_pro, D.PrecioVen * D.CanVe as 
importe
from
Facturas F inner join Detalles D on F.NunFac = D.NumFac
inner join Articula A on D.CodPro = A.id_pro
inner join Cliente C on F.CodCli = C.id_clientes
where F.NumFac = NumFac
end $$
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...