Giriş Yap Kayıt ol Online Üyeler Aktif Konular Arama Üyeler Forum Kuralları
Tahribat.Com | Asp Ile Replace İşlemi Sorunu
Tahribat.Com Forumları
Asp - Php - Cgi - Perl
      Asp Ile Replace İşlemi Sorunu
Bu Bölümde yeni konu açmak için tıklayın Konuyu cevaplamak için tık...
Konu 21 Ocak 2012 (Cumartesi) 11:52 tarihinde açıldı. Kısayol | Alıntı yap | Özel Mesaj
lepusmorris


Kayıt : 31 Mart 2007
please waiting..
Erkek Üye
 

veritabanımdaki xyz tablosunda id, kelime, cevir sütunları olduğunu düşünün. bir form oluşturup bir metni gönder dediğimde, metnin içindeki kelimelerden "kelime" sütununda geçen sözcüklerin "cevir" sütunundakilere dönüşmesini istiyorum. access'i kullanarak ufak bi deneme yaptım ama kayıt sayısı 70 binlerde olunca yanıt vermiyor:D bu işlemi daha stabil bir kodla nasıl yaptırabilirim? elbette mysql kullanmayı düşünüyorum ancak sonuç itibariyle 100k kelime kaydı olduğunu düşünerek bu tarz bir işlem yaptırılabilmesi mümkün mü?

 


tamam son sözü sen söyle ve sktir git.! ///// Yorumlarım madalyalarımdır. Hak edecek bişey yapmadıysam yorum eklemeyin.. ///// 
21 Ocak 2012 (Cumartesi) 17:02 tarihinde yazıldı. Kısayol | Alıntı yap | Özel Mesaj
pesimistzombie


Kayıt : 14 Haziran 2006
WAP
Erkek Üye
 

giden metni kelimelere ayır, kelimeleri tek tek like ile kontrol ettirip çevirip metni tekrar birleştir ya da 70bin kelimeyi asp dosyasına yazdır her sayfada 10ar bin kelime olacak şekilde include et replace yap. daha hızlı olacaktır.


:| 
21 Ocak 2012 (Cumartesi) 17:08 tarihinde yazıldı. Kısayol | Alıntı yap | Özel Mesaj
lepusmorris


Kayıt : 31 Mart 2007
please waiting..
Erkek Üye
 

pesimistzombie bunu yazdı:
-----------------------------

giden metni kelimelere ayır, kelimeleri tek tek like ile kontrol ettirip çevirip metni tekrar birleştir ya da 70bin kelimeyi asp dosyasına yazdır her sayfada 10ar bin kelime olacak şekilde include et replace yap. daha hızlı olacaktır.


-----------------------------

hocam tam olarak sadece kelime dönüştürme yapmayacak. bir kaç kelimeden oluşan bir kelime grubunuda dönüştürmesi gerektiğinden dolayı o şekil olmaz. ikinci dediğin şeklide kafamda canlandıramadım. aslında çok basit bir iş ama mesele hızlı ve tıkanmaması gerektiğinden biraz daha ince ayar gerekiyor(: duruma göre ücretli olarakta çalışabiliriz.


tamam son sözü sen söyle ve sktir git.! ///// Yorumlarım madalyalarımdır. Hak edecek bişey yapmadıysam yorum eklemeyin.. ///// 
21 Ocak 2012 (Cumartesi) 18:12 tarihinde yazıldı. Kısayol | Alıntı yap | Özel Mesaj
pesimistzombie


Kayıt : 14 Haziran 2006
WAP
Erkek Üye
 

şu şekilde düşündüm; dbdeki tüm verileri 

input=replace(input, "xyz", "xyz", 1, -1, 1)

input=replace(input, "xyz", "xyz", 1, -1, 1)  

gibi asp dosyalarına fso ile yazdırıyorsun. replace işlemini dbden çekerek değil, include ile yaptırıyorsun  :/ .. kelime ekledikçe de fso ile ekletirsin replace işlemlerini dbden ayırırsın.. 

bir başka seçenek de değişecek kelimelere, cümlelere bir tag ekleyerek işlem yapmak.

örneğin merhaba ben pesi yazısını yazarken merhaba ben [tag]pesi[tag] şeklinde kutucuğa yazıp çevir dediğinde de regexle tag aralarını alıp dbden kontrol ettirerek çevirtmen. 

edit: tabiki bunlar amele yöntemleri prof bişey düşünüyorsan mysql + stored procedure ile yükü sunucuya verip kurtulabilirsin. (stored procedure hakkında fazla bilgili değilim) 


:| 
21 Ocak 2012 (Cumartesi) 20:52 tarihinde yazıldı. Kısayol | Alıntı yap | Özel Mesaj
lepusmorris


Kayıt : 31 Mart 2007
please waiting..
Erkek Üye
 
hocam ilk dediğin sanırım bu şekilde diyosun ama access yanıt vermiyor 70k lık bir kayıt olunca. mysql kullanınca hızlı bir şekilde işlem yapar mı:S ???
nihayetinde ekrana 70k replace satırı yazacak:S



<%
Response.Charset = "windows-1254"
Response.CharSet = "ISO-8859-9"
Response.ContentType="text/html"
Session.LCID = 1055
Session.CodePage = 1254


'#Bağlantı Ayarları
'------------------------------------------------
Set Baglanti = Server.CreateObject("ADODB.Connection" ) 
Baglanti.Open "Provider=Microsoft.JET.OLEDB.4.0;Data Source=" & Server.MapPath("database/database.mdb")


'#Dönüştürme İşlemi
'------------------------------------------------
Private Function donustur(strmiz)
Str = strmiz

	Set cevir = Baglanti.Execute("Select * from tblkelimeler")
	Do while not cevir.eof

		Str = Replace(Str ,""&cevir("oncesi")&"",""&cevir("sonrasi")&"" ,1,-1,0)

	cevir.movenext
	loop
	cevir.close
	set cevir = nothing

donustur = Str
Set Str = Nothing
End Function
%>
 

tamam son sözü sen söyle ve sktir git.! ///// Yorumlarım madalyalarımdır. Hak edecek bişey yapmadıysam yorum eklemeyin.. ///// 
21 Ocak 2012 (Cumartesi) 20:57 tarihinde yazıldı. Kısayol | Alıntı yap | Özel Mesaj
pesimistzombie


Kayıt : 14 Haziran 2006
WAP
Erkek Üye
 

bir defalığına access dbdeki bilgileri elle dışa aktar asp dosyasına yaz replace kodlarını sonraki eklemelerini fso ile yaparsın. dbyi unut yani.. mysql access e göre daha hızlıdır ancak onun da o kadar kaydı döngüye sokmasını kaldıracağını hiç sanmıyorum.. ancak stored procedure ile yapabilir bu işlemi.


:| 
22 Ocak 2012 (Pazar) 01:36 tarihinde yazıldı. Kısayol | Alıntı yap | Özel Mesaj
lepusmorris


Kayıt : 31 Mart 2007
please waiting..
Erkek Üye
 

pesimistzombie bunu yazdı:
-----------------------------

bir defalığına access dbdeki bilgileri elle dışa aktar asp dosyasına yaz replace kodlarını sonraki eklemelerini fso ile yaparsın. dbyi unut yani.. mysql access e göre daha hızlıdır ancak onun da o kadar kaydı döngüye sokmasını kaldıracağını hiç sanmıyorum.. ancak stored procedure ile yapabilir bu işlemi.


-----------------------------

hocam replace kodlarını sayfaya yazınca daha başaralı bir sonuç aldım. ama bu seferde dosya boyutu 7-8 mb oldu.:D band genişliğinin anasını ağlatır valla:D yada localde çalıştırıcam sadece:D


tamam son sözü sen söyle ve sktir git.! ///// Yorumlarım madalyalarımdır. Hak edecek bişey yapmadıysam yorum eklemeyin.. ///// 
24 Ocak 2012 (Sali) 13:28 tarihinde yazıldı. Kısayol | Alıntı yap | Özel Mesaj
rakkoc


Kayıt : 19 Aralik 2003
ID :10850
Erkek Üye
 

70k kelimenin tabiki dosya boyutu yuksek olur :) MySQL ile sp yazarsan; data yapisinida Indexini filan verirsen olur; MsSQL dahada iyi olur. ama datanin mysqlde duruyor olmasi demek boyutunun yine 7-8 mb den dusuk olacagi anlamina gelmez. DIAsa nin datalarini tutuyorum ben bir mysql serverda ortalama 2,5milyon kayit 1,5gb civarinda.

Yapmak istediginin mantigi (eger dogru anlamis isem) ornek vermek gerekir ise sozluk scriptilerinde olan gibi. konu icinde gecen bir xxx kelimesi eger konu basligi olarak acilmis ise bu xxx ona giden bir linke cevrilecek


"AB" aslinda "Atin Bunu" demek :) bilinçlenelim. . . Facebookdaki durumumu begenirmisinler Tahribata gelmisler galba "Profilme yorum yaparmisin?"; "Konumu Uplarmisin"; "Pampa el atsana ?" ... 

[1]


Bu Bölümde yeni konu açmak için dıklayın Konuyu cevaplamak için tık...
Allah'a Havale Et Google Bookmark'a Ekle Yahoo'ya Ekle Stumbleupon'a Ekle Facebook'a Ekle Twitter'a Ekle   Google'da Ara : Asp ile Replace İşlemi Sorunu Favorilerime Ekle Yukarı Çık
Konuda 8 Mesaj Var.
Konu 288 Sefer Gösterilmiş.
2001-2012 © Tahribat Group - Her Hakkı Saklıdır. - ● Gizlilik İlkeleri ● Kullanım Koşulları ● İletişim