mssqlserver ve TRANSACTION baglı kulanıcıları uyarmak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
skyking
Üye
Mesajlar: 136
Kayıt: 09 Kas 2005 12:52
Konum: Antalya

mssqlserver ve TRANSACTION baglı kulanıcıları uyarmak

Mesaj gönderen skyking »

Kod: Tümünü seç

ADOConnection1.BeginTrans;
ADODataSet3.Append;
DataSource3.DataSet.FieldByName('kod').asstring:=edit1.text;
DataSource3.DataSet.FieldByName('ad').asstring:=edit2.text;
ADODataSet3.Post;
ADOConnection1.CommitTrans;
except
ADOConnection1.RollbackTrans;
end;
diger bilgisayardaki aynı formda aynı table guncelemiyor sorun neden oluyor acaba?

not:delphi 7 ve mssqlserver 2000 kulanıyorum
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Mrb; Transection, başlatıp bir tabloda değişiklik yapılırsa o tabloya diğer bağlantılar işlem RollBack veya Commit edilene kadar bağlantı kuramaz ve beklemeye geçerler. Bu SQL Server mimarisi gereği böyledir. Kolay gelsin.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
skyking
Üye
Mesajlar: 136
Kayıt: 09 Kas 2005 12:52
Konum: Antalya

Mesaj gönderen skyking »

arkadaslar sp_who2 ile kimin baglı oldugunu ve durumunu tarih ve saati görebiliyoruz adamlar command koymuslar ama commandda sadece yaptıgınız sorgu gelmiyor sadece bekleme durumu yada select geliyor

burda kulanıcı ne command gondermiş oldugu bulsam işi çözecem

belki bir ısık yakar kafanızda banada bildirirseniz sevinirim
Kullanıcı avatarı
skyking
Üye
Mesajlar: 136
Kayıt: 09 Kas 2005 12:52
Konum: Antalya

Mesaj gönderen skyking »

port dll ile oluyormus sqlservara injecte etikten sonra parametre gonderip sp miş gibi cağırabiliyorsunuz

triggerin içinde yani insert update delete içind cagırabiliyorsunuz

yardımlarınız için saolun
Kullanıcı avatarı
skyking
Üye
Mesajlar: 136
Kayıt: 09 Kas 2005 12:52
Konum: Antalya

Mesaj gönderen skyking »

ok arkadaslar tamamdır yaptım oleyyyyyyyy :)

formda herkez olamaz gözüyle bakıyordu :evil:

mantıgı anlatıyım size udp port gonderme dll buldum c++ yazılmıs boardcast mantıgı ile her ip message atıyor cok ii onu mssql servervara sp gibi tanıtım

Kod: Tümünü seç

EXEC sp_addextendedproc sql_event, 'sql_event.dll'
ve ilgili trigger ların altına sp calsıtırdım bu kadar basitmiş ama
5 günüm gitti yaaaaaa :evil:
Kullanıcı avatarı
Opt2000
Üye
Mesajlar: 216
Kayıt: 09 Tem 2003 10:04

Mesaj gönderen Opt2000 »

Selam,

Gerçi 5 gün kaybettikten sonra bunu yazmam seni iyice sinirlendirebilir, ama tam olarak nasıl yapıldığını bilmediğim için bir şey yazmadım.

Benzer bir araştırmayı ben de yapmıştım ve bu fonksiyonun Sql Server 2005 ve Express sürümlerinde desteklenmediği ve kullanılmasının tavsiye edilmediğini okumuştum MS'in dokümanlarında. MS yanlış hatırlamıyorsam bunun için .NET platformunda bir takım çözümler sunuyordu. Ben de .NET'den uzak durduğum için daha fazla araştırmamıştım.

Dikkat edersen, buraya yazdıklarım bile biraz havada kalan yazılar. Bugüne kadar da bir şey yazmamın sebebi de buydu.

Kolay gelsin,
Bahadır Alkaç
Kullanıcı avatarı
skyking
Üye
Mesajlar: 136
Kayıt: 09 Kas 2005 12:52
Konum: Antalya

Mesaj gönderen skyking »

hocam

google sp_addextendedproc 2005 diye aratırsan sonucu görebilirsin
http://msdn2.microsoft.com/en-us/ms188379.aspx
burda destek verip vermediği konsunda bilgi sahibi olucaksınız

ben polomik yapmak gibi bir kavram uzerinde durmuyorum sadece yanlıs bilgilendirme olmasın diye yazdım.
Kullanıcı avatarı
Opt2000
Üye
Mesajlar: 216
Kayıt: 09 Tem 2003 10:04

Mesaj gönderen Opt2000 »

Selam,
This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature. Use CLR Integration instead.
İngilizce bilmeyen arkadaşlar için de kabaca tercümesi şöyle
Bu özellik Microsoft SQL Server'in gelecekteki sürümlerinde silinecektir. Yeni yazılım geliştirme projelerinde bu özelliği kullanmaktan kaçının ve bu özelliği kullanan uygulamaları değiştirmek için yeniden planlama yapın. Bunun yerine CLR kullanın.
Bu metin gönderdiğin linkten alıntıdır. Anlatmak istediğim de buydu zaten. MS, sonraki sürümlerinde bu fonksiyonu desteklemeyeceğini, bunun yerine CLR kullanılmasını tavsiye ediyor. Elbette şu an bu çözüm işe yarayacaktır, ama uzun vadeli ve sürekli güncellenecek bir projede sıkıntı yaratabilir.

Bu mesajı göndermemin sebebi elbette polemik değil, yanlış anlaşılmasın. Eğer bu fonksiyonu MS'in sitesinde değil de, başka bir sitede görmüş olsaydın, o zaman bu uyarıyı da görmemiş olabilirdin. Bu da projenin ilerleyen günlerinde (belki de yıllarında, bilmiyorum) sana daha büyük problem yaratabilirdi. Anlayacağın, tamamen iyi niyetimden :)

Kolay gelsin,
Bahadır Alkaç
Kullanıcı avatarı
skyking
Üye
Mesajlar: 136
Kayıt: 09 Kas 2005 12:52
Konum: Antalya

Mesaj gönderen skyking »

slm
dll injecte mssql 2000 ve 2005 calısıyor ama yeni bir sql server ne zaamn cıkar bilemiyorum bu arada mssql2000 yamaları cıkıyor (enson mssql 2000 sp4 Hotfix cıkartılar agustos ayında) ama yinede
eger mssql 2005 c yada visual basicde kod yazarak bu işi yapmak
istiyorsanız

CLR Destekli Trigger Yazarak yapabilirsiniz diye söylüyor microsoft
kodun özü

Kod: Tümünü seç

SqlContext.Pipe.Send(msg)
http://msdn2.microsoft.com/en-us/library/ms131093.aspx
Cevapla