İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

Her üç kayıttan birini silmek

qwerty

0
İyinet Üyesi
Katılım
11 Şubat 2005
Mesajlar
170
Reaction score
0
MSSQL veritabanımdaki her üç kayıttan birini silmek istiyorum.
Bu şekilde 70000 veriyi 46000'e düşürecek bir kod nasıl yazılabilir.
Yardımcı olabilecek arkadaşlara şimdiden teşekkürler.

Aşağıya yazdığım kod hata veriyor.

<!--#INCLUDE FILE="baglan.asp"-->
<%

set rs = db.Execute("select * from kayitlar")
for id=1 to 70000 step 3

set rs = db.Execute("delete from kayitlar where id ='"&id&"' ")

rs.movenext
Next


db.close
set db=nothing


%>
 

bytuncay

0
İyinet Üyesi
Katılım
11 Ekim 2005
Mesajlar
618
Reaction score
0
Konum
istanbul
set rs = db.Execute("select * from kayitlar")
for id=1 to 70000 step 3

set rs = db.Execute("delete from kayitlar where id ='"&id&"' ")



2 kez rs kullanamassın birini kapatmadın birini ondan hata alıyor olabilirsin
 

bytuncay

0
İyinet Üyesi
Katılım
11 Ekim 2005
Mesajlar
618
Reaction score
0
Konum
istanbul
<!--#INCLUDE FILE="baglan.asp"-->
<%

set rs = db.Execute("select * from kayitlar")
for id=1 to 70000 step 3
if rs.eof then exit for

set ms = db.Execute("delete from kayitlar where id ='"&id&"' ")

rs.movenext
Next


db.close
set db=nothing


%>


bunu dene bir
 

qwerty

0
İyinet Üyesi
Katılım
11 Şubat 2005
Mesajlar
170
Reaction score
0
Merhaba byTuncay,

Yardımın için çok teşekkürler, senin kodu denedim. Şöyle bir hata verdi.

Hata Tipi:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E31)
[Microsoft][ODBC SQL Server Driver]Zaman aşımı doldu
/delete_azalt.asp, line 8
 

bytuncay

0
İyinet Üyesi
Katılım
11 Ekim 2005
Mesajlar
618
Reaction score
0
Konum
istanbul
script timeout süren yetmiyor sanırım tam olarak ne yapmak istediğini açıklarsan başka alternatifler düşünebilirim
 

qwerty

0
İyinet Üyesi
Katılım
11 Şubat 2005
Mesajlar
170
Reaction score
0
70000 kayıtlık şarkı sözüm var. Her ay MSSQL limit aşımı ödememek için Bunu 46000'e düşürmek istiyorum. Ancak ilk 23000 kaydı silersem. A'dan G'ye kadar hiç parça kalmayacak, bu nedenle (her harf grubundan belli sayıda kayıt kalması için) id sırasına göre her üç kayıttan 1 ini silmek istiyorum.
 

qwerty

0
İyinet Üyesi
Katılım
11 Şubat 2005
Mesajlar
170
Reaction score
0
Sağolsun, TRinsanRehberi rumuzlu arkadaş, başka bir problemi düzeltmek için aşağıdaki kodla bende ki timeout sorununu halletmişti.

Acaba bu kodu yukarıdaki amaca uyarlayabilir miyiz ?

<!--#INCLUDE FILE="baglan.asp"-->
<%
baslangic = Request.QueryString("sayac")

bitis = baslangic + 10

set xs = nc.Execute("delete from yabanci where sarki_sozu not like '%<br/>%' and id >"& baslangic &" and id <= "& bitis &"")

%>

<script language="javascript">
window.setTimeout("window.open('toplu_sil.asp?saya c=<%=bitis%>','toplusil','')", 1 * 20000);
</script>
 

qwerty

0
İyinet Üyesi
Katılım
11 Şubat 2005
Mesajlar
170
Reaction score
0
Bu kodun yazılı olduğu sayfanın ismi toplusil.asp

Kusura bakma seni de meşgul ediyorum. Şuan acilen forumdan çıkmam gerekiyor inşallah yarın yeni düzenlemeleri deneyeceğim.Yardım ve ilgin için çok teşekkür ediyorum bytuncay.
 

ZIPPKIN

0
İyinet Üyesi
Katılım
30 Ekim 2005
Mesajlar
2,294
Reaction score
1
Konum
Dream Island : Moore
script.timeout=10 '10 dk yeter sanırım. server kasılır mı bilmiyorum
set silrs=server.createobject("Adodb.recordset")
silsql="select * from kayitlar"
silrs.open silsql,db,1,3
i=1
do while not silrs.eof
if i mod 3=0 then
silrs.delete
silrs.update
end if
silrs.movenext
loop

silrs.close
set silrs=nothing

db.close
set db=nothing
 

Mp3Powers.Com

0
İyinet Üyesi
Katılım
27 Nisan 2005
Mesajlar
136
Reaction score
0
script.timeout=10 '10 dk yeter sanırım. server kasılır mı bilmiyorum
set silrs=server.createobject("Adodb.recordset")
silsql="select * from kayitlar"
silrs.open silsql,db,1,3
i=1
do while not silrs.eof
if i mod 3=0 then
silrs.delete
silrs.update
end if
silrs.movenext
loop

silrs.close
set silrs=nothing

db.close
set db=nothing

döngünün içine sayaç koymayı unutmuşsun sanırım, i=i+1 ide eklersen daha güzel olur gibime geliyor :)
 

ZIPPKIN

0
İyinet Üyesi
Katılım
30 Ekim 2005
Mesajlar
2,294
Reaction score
1
Konum
Dream Island : Moore
:) tşk

Kod:
script.timeout=10 '10 dk yeter sanırım. server kasılır mı bilmiyorum
set silrs=server.createobject("Adodb.recordset")
silsql="select * from kayitlar"
silrs.open silsql,db,1,3
i=1
do while not silrs.eof
if i mod 3=0 then
silrs.delete
silrs.update
end if
silrs.movenext
[B]i=i+1[/B]
loop

silrs.close
set silrs=nothing

db.close
set db=nothing
 

qwerty

0
İyinet Üyesi
Katılım
11 Şubat 2005
Mesajlar
170
Reaction score
0
Arkadaşlar teşekkür ediyorum yardımlarınız için
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst