|
|
#1 (permalink) |
|
Mesaj: n/a
|
Ms Sql - PortGre Sql import
MS SQL veritabanı kullanılarak Delphide gelistirilmis bi yazılımı post gre SQL e cevirmede yardımcı olabilirseniz sevinirim.. suanki yapı baya kompleks yalnız.. veri tabanındaki bı cok tabloda trigger kullandık, 40 a yakın stored procedure ve 55 - 60 tane de view soz konusu.. yani direk tablo aktarımı ve data transfer deil.. ogrenmek istedigim ms SQL ile postgre SQL arasındaki komut farklılıkları ve isleyis... trigger örneği : Kod:
CREATE TRIGGER trg_stoksil ON dbo.biletislem
FOR DELETE
AS
declare @biletno Varchar(20)
declare @aciklama varchar (100)
declare @yolcuadi varchar (100)
Declare @void int
Declare @iade int
declare @faturaId numeric (18,0)
Declare @Id Numeric (18,0)
declare @bag int
Select @biletno=biletno ,@yolcuadi=yolcuadi, @void=void, @faturaId=faturaId , @Id=Id , @iade=iade ,@bag=bag,
@aciklama=coalesce(parkur0,'') + ' ' +coalesce(parkur1,'') + ' ' + coalesce(parkur2,'') + ' ' + coalesce(parkur3,'') + ' ' + coalesce(parkur4,'')
FROM DELETED
if (@biletno <> '') and (@bag=0 or @bag is null) begin
Delete From stokkodlari Where kod=@biletno
if @faturaId > 0 begin
delete from faturaana where ID=@faturaId
delete from faturadetay where islemno=@faturaId
end
EXEC sp_cari_hareket_kaydi @Id,'D','SATIS','G','B'
EXEC sp_cari_hareket_kaydi @Id,'D','IADE','C','A'
end;
Kod:
CREATE PROCEDURE sp_cari_hareket_kaydi(
@@islemId Numeric (12,0),
@@islemtipi char (1),
@@islemyeri Varchar (20),
@@islem Char(1),
@@islemyonu Char(1))
AS
Delete from carihareket where cartId = @@islemId and harekettipi = @@islemyeri and islem= @@islem
-- 1 tüm gerçekleşen islemtipi için kayıt tabloda bulundu ve slindi...
if @@islemtipi <> 'D' begin
--*************************************
if @@islemyonu = 'B' begin
if @@islemyeri = 'FATURA' begin
Select Id from faturadetay where Id=@@islemId
if @@rowcount > 0
set @@islemtipi = @@islem
Exec sp_ch_fatura_cari @@islemId, @@islemtipi,@@islemyeri, @@islemyonu
end
if @@islemyeri = 'SATIS' begin
Select Id from biletislem where Id=@@islemId
if @@rowcount > 0
set @@islemtipi = @@islem
Exec sp_ch_biletsatis_Borc @@islemId, @@islemtipi,@@islemyeri, @@islemyonu
end
end
--*************************************
if @@islemyonu = 'A' begin
if @@islemyeri = 'FATURA' begin
Select Id from faturadetay where Id=@@islemId
if @@rowcount > 0
set @@islemtipi = @@islem
Exec sp_ch_fatura_cari @@islemId, @@islemtipi,@@islemyeri, @@islemyonu
end
if @@islemyeri = 'IADE' begin
Select Id from biletislem where Id=@@islemId
if @@rowcount > 0
set @@islemtipi = @@islem
Exec sp_ch_biletiade_alacak @@islemId, @@islemtipi,@@islemyeri, @@islemyonu
end
end
--*************************************
end
--2
GO
|
|
| Sponsorlu Bağlantılar | |
|
Zoque.Forum
Reklam
|
|
Zoque'a hoşgeldiniz!