Merhaba,

Php & MySQL ikilisini kullanıyorsanız mysql veritabanınızdan tabloların satırlarını çekip genelde başlıklarda baş harflerini php‘nin ucfirst fonksiyonunu kullanılır, peki ya bu fonksiyonu kullanmadan direk baş harfler büyütülmüş haliyle çekmeyi düşündünüz mü ?
Lafı  fazla uzatmadan fonksiyonu vereyim :)

DELIMITER $$
CREATE FUNCTION Ucfirst (INPUT VARCHAR(255))

RETURNS VARCHAR(255)

DETERMINISTIC

BEGIN
    DECLARE len INT;
    DECLARE i INT;

    SET len   = CHAR_LENGTH(INPUT);
    SET INPUT = LOWER(INPUT);
    SET i = 0;

    WHILE (i < len) DO
        IF (MID(INPUT,i,1) = ' ' OR i = 0) THEN
            IF (i < len) THEN
                SET INPUT = CONCAT(
                    LEFT(INPUT,i),
                    UPPER(MID(INPUT,i + 1,1)),
                    RIGHT(INPUT,len - i - 1)
                );
            END IF;
        END IF;
        SET i = i + 1;
    END WHILE;

    RETURN INPUT;
END$$
DELIMITER ;

yukarıda belirtiğim fonksiyon ile isteğinize ulaşabilirsiniz
Kullanımı

mysql-> select Ucfirst(makalebaslik) as yenibaslik from makaleler
mysql-> insert into makaleler (makalebaslik)values(Ucfirst('makala başlığı'));

şeklinde kullanabilirsiniz.

 Leave a Reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

   
© 2012 Kemal BALABAN Suffusion theme by Sayontan Sinha