2010-10-07 5 views
5

Jak wstawić symbol indyjskich rupii w bazie danych (Oracle 10g, MySql 5.0 i Sql Server 2008)?Jak wstawić symbol indyjskich rupii w bazie danych (Oracle 10g, MySql 5.0 i Sql Server 2008)?

Właściwie miałem jedną tabelę "Waluta", w której 2 pola są jak "currencyName" i "currencysymbol", więc jak wstawiłbym nowy symbol rupii w databse.

+0

Myślę, że trzeba poczekać, aż się do Unicode i Oracle lub innego dostawcy wdrożenie tej wersji Unicode w produktach db . –

+0

Nie jest wymagane, aby baza danych rozpoznała znak Unicode w celu jego zapisania. Potrzebujesz wsparcia dla bazy danych, jeśli chcesz, aby postać sortowała/dopasowywała (zestawiała) z inną postacią zgodnie z określoną regułą, ale nie wydaje się to konieczne dla symbolu waluty. – bobince

+0

@Preet Sangha: wycofałem twoją edycję. OP w szczególności pyta o nowy symbol rupii, któremu niedawno nadano kod punktu U + 20B9. U + 20A8 to stary symbol rupii z rozkładem "R". – bobince

Odpowiedz

1

Nie kiedykolwiek zrobił to, ale można użyć użycie NCHAR (integer_expression)

insert into Currency (currencyName, currencysymbol) 
values ('Indian Rupee', NCHAR(8425)) -- 8425 is 20B9 in decimal 
+0

To nie działa z oracle, możesz dać zapytanie do oracle. – eatSleepCode

+0

Nie mam dostępu do Oracle. przepraszam –

5

Nic szczególnego (U + 20B9 New Rupia symbol), z tym, że jest tak nowy, nie ma prawie zerowe wsparcie czcionki dla niego. Jeśli masz połączenie z bazą danych, który obsługuje standard Unicode, można przechowywać go równie dobrze jak każdy inny znak:

INSERT INTO Currency (name, symbol) VALUES ('INR', '₹'); 

(. Będziesz chcesz używać NVARCHAR do przechowywania i N'₹' w SQL Server)

Jeśli nie masz połączenia z Unicode (na przykład używasz jakiegoś narzędzia do bzdur, takiego jak konsola Windows), musisz obejść to, używając np.

VALUES ('INR', CHAR(226, 130, 185)) 

do UTF-8-zgromadzonej kolumny MySQL lub NCHAR(8377) dla kolumny Unicode SQL Server.

+0

Próbuję to samo, ale nie mogę włożyć do wyroczni 11g. – eatSleepCode

+0

@eatSleepCode: Musisz upewnić się, że twoje tabele są przechowywane z 'CHARACTER SET UTF8', a połączenie z samą Oracle używa' UTF8'. (Lub "AL32UTF8" w obu przypadkach, jeśli chcesz także obsługiwać znaki spoza podstawowej płaszczyzny wielojęzycznej.) – bobince

1

Każda postać ma kod Unicode, który odróżnia go od innych, posiada własny kod Indian Rupees Symbol. tak jak każde inne znaki można wstawiać go w yourdatabase, ale najważniejsze jest to, że pole w tabeli currencysymbol powinny być NVARCHAR

Po włożeniu tego symbolu trzeba użyć swojego kodu Unicode jak

INSERT INTO Currency ([currencysymbol]) VALUES (N'⃰'); -- dont forget to use **N** before the symbol 

tylko upewnić się, że 20B9 jest kod dla swojej postaci

1
insert into currency values('india','rupee',N'रु'') 
+0

Nie należy zamieszczać linków do tego bloga. Usuwam link, aby zapobiec usunięciu postu jako spamu. Odpowiedź jest bardzo krótka - proszę zamieścić całą odpowiedź na tej stronie. –

1

@Sanju Its tak proste, aby wstawić zwykły tekst, przede wszystkim musisz pobrać czcionkę z http://cdn.webrupee.com/WebRupee.V2.0.ttf. Niż ten plik czcionki w folderze o nazwie "WebRupee" ok! niż skopiuj ten kod lub napisz swój własny kod jako czyn, zobacz

<form method="post" action=""> 
<table><style> 
@font-face{font-family: 'WebRupee'; 
src: url('WebRupee/WebRupee.V2.0.ttf') format('truetype');font-weight: normal;font-style: normal;} 
.WebRupee{ 
color:#FF0000; 
font-family: 'WebRupee';} 
</style> 
    <tr> 

     <td><input type="text" name="rs" value="Rs."class="WebRupee" /></span> 
       </td> 
        </tr> 
        <tr> 

     <td><input type="submit" name="submit" value="submit" /> 
       </td> 
        </tr> 
         </table> 
</form> 

<?php 
if($_POST['submit']){ 

    $sql="insert into rs(inr)VALUES('$_POST[rs]')"; 
    if(!mysql_query($sql,$con)) 
    { 
     die('Error:'.mysql_error()); 
    } 
     else{ 
     echo "<script>alert('One Record Added !!!...')</script>"; 

     mysql_close($con); 
     }} 

     ?> 

Mam nadzieję, że ci to pomoże.

1

Użyliśmy nvarchar Columa dla CURRENCYSYMBOL i wstawić Nchar (8377):

insert into Currency (currencyName, currencysymbol) 
values ('Indian Rupee', NCHAR(8377)); 
Powiązane problemy