Webmaster Forumu

Geri git   Webmaster Forumu > Webmaster Kaynak Eğitim Tanıtım Hizmet > MySQL Veritabanı SQL
Kayıt ol Blogs Yardım Üye Listesi Ajanda iTrader Forumları Okundu Kabul Et

MySQL Veritabanı SQL SQL MySQL Access MSSQL Oracle Veritabani Database

Cevapla Add This!
 
LinkBack (2) Seçenekler Stil
  2 links from elsewhere to this Post. Click to view. #1 (permalink)   iTrader 
Alt 2007-03-11, 19:14
hakimi - ait Kullanıcı Resmi (Avatar)
Senior Member
 
Üyelik tarihi: Jul 2006
Mesajlar: 713
Tecrübe Puanı: 2
iTrader: %100/7
hakimi is on a distinguished road
Standart mysql da çift kayıtlar

arkadşlar. mysql da bulunan çift kayıtları nasıl silebilirim. mesela 20.000 lik bir db de 1500 tane çift kayıt var diyelim. çift kayıtları nasıl teke düşürebiliriz??
__________________
Cicoz
Alıntı ile Cevapla

  #2 (permalink)   iTrader 
Alt 2007-03-11, 20:06
iyinet - ait Kullanıcı Resmi (Avatar)
Paylaşım için teşekkürler
 
Üyelik tarihi: Sep 2002
Mesajlar: 6.016
Blog Entries: 2
Tecrübe Puanı: 3
iTrader: %100/6
iyinet is just really niceiyinet is just really niceiyinet is just really niceiyinet is just really nice
Standart

Alıntı:
hakimi´isimli üyeden Alıntı Mesajı göster
arkadşlar. mysql da bulunan çift kayıtları nasıl silebilirim. mesela 20.000 lik bir db de 1500 tane çift kayıt var diyelim. çift kayıtları nasıl teke düşürebiliriz??
Cift kayitlarin oldugu tablo adinin ciftli_tablo ve cift kayitlarin email alani uzerinde oldugunu varsayalim.

Alıntı:
CREATE TABLE tekil_tablo select * from ciftli_tablo where 1=2;
ALTER TABLE tekil_tablo ADD PRIMARY KEY (email);
INSERT IGNORE INTO tekil_tablo SELECT * FROM ciftli_tablo;
RENAME TABLE ciftli_tablo TO ciftli_tablo_eski;
RENAME TABLE tekil_tablo TO ciftli_tablo;
Bu komutlari calistirmanizin ardindan ciftli_tablo da artik tum emailler tekil olacaktir.

Eger cift kayitlar 1 den fazla alan uzerinde ise yukaridaki komut zincirindeki 2. satirdaki komutu asagidaki sekilde degistirebilirsiniz:

Alıntı:
ALTER TABLE tekil_tablo ADD PRIMARY KEY (email,ad,soyad,adres);
__________________
Forum Reklam Site Reklam
Alıntı ile Cevapla

  #3 (permalink)   iTrader 
Alt 2007-03-11, 20:21
mami
 
Üyelik tarihi: Sep 2006
Nerden: dreamcity
Mesajlar: 4.330
Blog Entries: 3
Tecrübe Puanı: 0
iTrader: %100/18
Mywedding is just really niceMywedding is just really niceMywedding is just really niceMywedding is just really nice
Standart

merhabalar , benimde yorum tablomda yorumlar bazen çift ve daha çok çıkabiliryor.
ne yapabilirim , yardımcı olması bakımından tablo aşağıda ;

CREATE TABLE `iddap_comments` (
`pid` mediumint(10) NOT NULL default '0',
`msg_id` mediumint(10) NOT NULL auto_increment,
`msg_author` varchar(25) NOT NULL default '',
`msg_body` text NOT NULL,
`msg_date` datetime NOT NULL default '0000-00-00 00:00:00',
`msg_raw_ip` tinytext,
`msg_hdr_ip` tinytext,
`author_md5_id` varchar(32) NOT NULL default '',
`author_id` int(11) NOT NULL default '0',
PRIMARY KEY (`msg_id`),
KEY `com_pic_id` (`pid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Used to store comments made on pics' AUTO_INCREMENT=9954 ;
Alıntı ile Cevapla

  #4 (permalink)   iTrader 
Alt 2007-03-11, 20:43
iyinet - ait Kullanıcı Resmi (Avatar)
Paylaşım için teşekkürler
 
Üyelik tarihi: Sep 2002
Mesajlar: 6.016
Blog Entries: 2
Tecrübe Puanı: 3
iTrader: %100/6
iyinet is just really niceiyinet is just really niceiyinet is just really niceiyinet is just really nice
Standart

Alıntı:
Mywedding´isimli üyeden Alıntı Mesajı göster
merhabalar , benimde yorum tablomda yorumlar bazen çift ve daha çok çıkabiliryor.
ne yapabilirim , yardımcı olması bakımından tablo aşağıda ;

CREATE TABLE `iddap_comments` (
`pid` mediumint(10) NOT NULL default '0',
`msg_id` mediumint(10) NOT NULL auto_increment,
`msg_author` varchar(25) NOT NULL default '',
`msg_body` text NOT NULL,
`msg_date` datetime NOT NULL default '0000-00-00 00:00:00',
`msg_raw_ip` tinytext,
`msg_hdr_ip` tinytext,
`author_md5_id` varchar(32) NOT NULL default '',
`author_id` int(11) NOT NULL default '0',
PRIMARY KEY (`msg_id`),
KEY `com_pic_id` (`pid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Used to store comments made on pics' AUTO_INCREMENT=9954 ;
Yukarida anlattiklarim gecerli yine.
Cift kayitlar hangi kayit ustunde ise o tablo uzerinde primary key yaratin, yada unique index.

Alıntı:
CREATE TABLE tekil_tablo select * from iddap_comments where 1=2;
ALTER TABLE tekil_tablo ADD PRIMARY KEY (msg_body);
INSERT IGNORE INTO tekil_tablo SELECT * FROM iddap_comments;
RENAME TABLE iddap_comments TO iddap_comments_eski;
RENAME TABLE tekil_tablo TO iddap_comments;
__________________
Forum Reklam Site Reklam
Alıntı ile Cevapla

  #5 (permalink)   iTrader 
Alt 2007-03-11, 21:00
webrlis - ait Kullanıcı Resmi (Avatar)
Member
 
Üyelik tarihi: Jul 2006
Mesajlar: 339
Tecrübe Puanı: 2
iTrader: %75/2
webrlis is on a distinguished road
Standart

bende şöyle bir hata veriyor neden olabilir

Alıntı:
#1170 - BLOB/TEXT column 'email' used in key specification without a key length
__________________
--------------
Alıntı ile Cevapla

  #6 (permalink)   iTrader 
Alt 2007-03-11, 21:02
iyinet - ait Kullanıcı Resmi (Avatar)
Paylaşım için teşekkürler
 
Üyelik tarihi: Sep 2002
Mesajlar: 6.016
Blog Entries: 2
Tecrübe Puanı: 3
iTrader: %100/6
iyinet is just really niceiyinet is just really niceiyinet is just really niceiyinet is just really nice
Standart

Alıntı:
webrlis´isimli üyeden Alıntı Mesajı göster
bende şöyle bir hata veriyor neden olabilir
Veri tipi Text ise:

Bu komutta email alaninin 255 den buyuk olmadigini varsayiyoruz:
Alıntı:
ALTER TABLE tekil_tablo ADD PRIMARY KEY (email(255));

Text alanindaki verilerin uzunlugu 1000 ise:
Alıntı:
ALTER TABLE tekil_tablo ADD PRIMARY KEY (email(1000));
__________________
Forum Reklam Site Reklam
Alıntı ile Cevapla

  #7 (permalink)   iTrader 
Alt 2007-03-11, 23:28
hakimi - ait Kullanıcı Resmi (Avatar)
Senior Member
 
Üyelik tarihi: Jul 2006
Mesajlar: 713
Tecrübe Puanı: 2
iTrader: %100/7
hakimi is on a distinguished road
Standart

Çok teşekkürler iyinet. Yardımların için. Sorunumuz çözüldü ))
__________________
Cicoz
Alıntı ile Cevapla

  #8 (permalink)   iTrader 
Alt 2007-08-18, 13:01
Senior Member
 
Üyelik tarihi: May 2007
Nerden: Antalya
Mesajlar: 511
Tecrübe Puanı: 1
iTrader: %0/0
Ozcan is on a distinguished road
Standart

hocam benim de sorunum şu id alanı primari key birde email alanı var. Şimdi çift mail ile kayıt girilmemesi için mail alanını primery key yapmaya çalışıyorum şu hata çıkıyor.

ALTER TABLE `ytb` DROP PRIMARY KEY ,
ADD PRIMARY KEY ( `mail` )

MySQL çıktısı: Belgeler
#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key

tabloyu silip yeniden denedim bu sefer id alanıyla mail alanını ikisini birden primery key yapıyor bu yüzden gene mail adresleri yeniden girile biliyor. Access gibi çalıştığını zannediyorum. Mysql i yeni yeni öğreniyorumda. Yani benim kayıtlı olan kayıtları girmemem için muhtemelen mail alanını primary key yapmam lazım fakat varchar(50) olduğundan mı dır yoksa id alanının auto incornet olmasından mıdır bi türlü bulamadım . kayıt işlemleride seri bir şekilde 15 li yapılıyor yani sürekli bu varmı bunu kontrol et deyip sonra kayıt yaptırmak biraz işleri uzatır.
Alıntı ile Cevapla

  #9 (permalink)   iTrader 
Alt 2007-08-18, 18:06
iyinet - ait Kullanıcı Resmi (Avatar)
Paylaşım için teşekkürler
 
Üyelik tarihi: Sep 2002
Mesajlar: 6.016
Blog Entries: 2
Tecrübe Puanı: 3
iTrader: %100/6
iyinet is just really niceiyinet is just really niceiyinet is just really niceiyinet is just really nice
Standart

Alıntı:
Ozcan´isimli üyeden Alıntı Mesajı göster
hocam benim de sorunum şu id alanı primari key birde email alanı var. Şimdi çift mail ile kayıt girilmemesi için mail alanını primery key yapmaya çalışıyorum şu hata çıkıyor.

ALTER TABLE `ytb` DROP PRIMARY KEY ,
ADD PRIMARY KEY ( `mail` )

MySQL çıktısı: Belgeler
#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key

tabloyu silip yeniden denedim bu sefer id alanıyla mail alanını ikisini birden primery key yapıyor bu yüzden gene mail adresleri yeniden girile biliyor. Access gibi çalıştığını zannediyorum. Mysql i yeni yeni öğreniyorumda. Yani benim kayıtlı olan kayıtları girmemem için muhtemelen mail alanını primary key yapmam lazım fakat varchar(50) olduğundan mı dır yoksa id alanının auto incornet olmasından mıdır bi türlü bulamadım . kayıt işlemleride seri bir şekilde 15 li yapılıyor yani sürekli bu varmı bunu kontrol et deyip sonra kayıt yaptırmak biraz işleri uzatır.
PRIMARY KEY i drop etme, o autoincrement icin gerekli.
mail i tekil yapmak icin

Alıntı:
ALTER TABLE `ytb` ADD UNIQUE (`mail` ) ;
__________________
Forum Reklam Site Reklam
Alıntı ile Cevapla

Cevapla


LinkBacks (?)
LinkBack to this Thread: http://forum.iyinet.com/mysql-veritabani-sql/49935-mysql-da-cift-kayitlar.html
Konuyu Başlatan For Type Tarih
SQL de çift mükerrer tekrarlayan aynı kayıtların silinmesi : RSS Dünyasi This thread Pingback 2008-03-23 20:54
Bahri Meric CANLI Kisisel Web Sitesi  Bahri.Info This thread Refback 2008-02-05 08:50

Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Çift sorgu (mysql) yardım... hoppala PHP 3 2006-04-15 11:00
Kayıtlar hakkında ?! skaterberk Google Adsense 3 2005-11-09 15:11
Tek tık çift site DamgaNet PHP 2 2005-07-02 12:00
php ve mysql ile cift satirlari tespit etme! justsextk PHP 0 2004-02-21 21:54


Bütün Zaman Ayarları WEZ +2 olarak düzenlenmiştir. Şu Anki Saat: 16:04 .


Powered by vBulletin® Version 3.6.10
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.1.0

Firefox