Znak $
Agata - 12-10-2007 00:01
Znak $
Witam, moje pytanie jest dosc proste, ale potrzbuje znac ogolna odpowiedz, niezalezne od bazy dany: Czy znak $ jest "normalnym" znakiem jak litera lub cyfra, tzn., czy nazwa kolumny moze zawierac (scislej zaczynac sie $)?
Agata
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
dap - 12-10-2007 00:01
Agata wrote: > Witam, > moje pytanie jest dosc proste, ale potrzbuje znac ogolna odpowiedz, niezalezne > od bazy dany: Czy znak $ jest "normalnym" znakiem jak litera lub cyfra, tzn., > czy nazwa kolumny moze zawierac (scislej zaczynac sie $)?
Nie. W oracle nawet cyfry są niedozwolone.
dap -- dap.polanski.biz
pasman - 12-10-2007 00:01
> Witam, > moje pytanie jest dosc proste, ale potrzbuje znac ogolna odpowiedz, niezalezne > od bazy dany: Czy znak $ jest "normalnym" znakiem jak litera lub cyfra, tzn., > czy nazwa kolumny moze zawierac (scislej zaczynac sie $)?
w postgresie się to udaje: ---------------- create table "$" ("$" text); Zapytanie zostało wykonane w 157 ms i nie zwróciło żadnych wyników.
Thomas Olszewicki - 12-10-2007 00:01
On Oct 11, 7:37 am, dap <news...@gazeta.pl> wrote: > Agata wrote: > > Witam, > > moje pytanie jest dosc proste, ale potrzbuje znac ogolna odpowiedz, niezalezne > > od bazy dany: Czy znak $ jest "normalnym" znakiem jak litera lub cyfra,tzn., > > czy nazwa kolumny moze zawierac (scislej zaczynac sie $)? > > Nie. W oracle nawet cyfry są niedozwolone. > > dap > -- > dap.polanski.biz
Dap, W oracle mozesz uzyc "" do nazw tables i column, wtedy to ograniczenie mozna obejsc. W praktyce nie uzywane. Zobacz: Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 Connected as ... SQL> CREATE TABLE "$5" ("$3" NUMBER); Table created SQL> CREATE TABLE "5$" ("3This" NUMBER); Table created
HTH Thomas
jerzy - 13-10-2007 00:01
pasman pisze: >> Witam, >> moje pytanie jest dosc proste, ale potrzbuje znac ogolna odpowiedz, niezalezne >> od bazy dany: Czy znak $ jest "normalnym" znakiem jak litera lub cyfra, tzn., >> czy nazwa kolumny moze zawierac (scislej zaczynac sie $)? > > w postgresie się to udaje: > ---------------- > create table "$" ("$" text); > Zapytanie zostało wykonane w 157 ms i nie zwróciło żadnych wyników. > > mysql 5.0 też create table $nowy (...
Query OK, 0 rows affected (0.03 sec)
mysql> show table; +---------------------+ | Tables_in_nowa | +---------------------+ | $nowy |
dap997 - 15-10-2007 00:00
Thomas Olszewicki wrote: > On Oct 11, 7:37 am, dap <news...@gazeta.pl> wrote: >> Agata wrote: >>> Witam, >>> moje pytanie jest dosc proste, ale potrzbuje znac ogolna odpowiedz, niezalezne >>> od bazy dany: Czy znak $ jest "normalnym" znakiem jak litera lub cyfra, tzn., >>> czy nazwa kolumny moze zawierac (scislej zaczynac sie $)? >> Nie. W oracle nawet cyfry są niedozwolone. >> >> dap >> -- >> dap.polanski.biz > > Dap, > W oracle mozesz uzyc "" do nazw tables i column, wtedy to ograniczenie > mozna obejsc. > W praktyce nie uzywane. > Zobacz: > Connected to Oracle Database 10g Enterprise Edition Release > 10.2.0.2.0 > Connected as ... > SQL> CREATE TABLE "$5" ("$3" NUMBER); > Table created > SQL> CREATE TABLE "5$" ("3This" NUMBER); > Table created
Hej Thomas, tak masz rację - używając znaku " można wymusić w Oracle posiadanie a nazwach tabel i kolumn znaków specjalnych. Ja pytanie Agaty zrozumiałem o pytanie o generalną zasadę.
Bo znaki specjalne ($ w tym wypadku i liczby) można bez żadnych problemów umieszczać w środku nazwy, ale nie na początku.
14:28:22 SQL> create table $test ( ala number) ; create table $test ( ala number) * ERROR at line 1: ORA-00911: invalid character
Elapsed: 00:00:00.00 14:29:27 SQL> create table ala$test (ala number) ;
Table created.
Elapsed: 00:00:00.02 14:29:39 SQL> create table 1test (ala number) ; create table 1test (ala number) * ERROR at line 1: ORA-00903: invalid table name
Elapsed: 00:00:00.00 14:29:52 SQL> create table ala1test (ala number) ;
Table created.
Zresztą użycie tej opcji jako rodzaju furtki do kompatybilności między wieloma bazami jest bez sensu, bo przy każdym odwołaniu do tabeli trzeba podawać ", co jest dodatkową wadą takie rozwiązania.
SQL> create table "$test2" ("$ala" number) ;
Table created.
SQL> create table "1table" ("1" number) ;
Table created.
SQL> select * from $test2 ; select * from $test2 * ERROR at line 1: ORA-00911: invalid character
SQL> select * From "$test2" ;
no rows selected
SQL>
dap
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
xHarbour/CLipper/Linuks - brak polskich =?ISO-8859-2?Q?znak=F3w_?==?ISO-8859-2?Q?w_GET?=
[MySQL] metody =?ISO-8859-2?Q?por=F3wnywania_znak=F3w_-_ja?==?ISO-8859-2?Q?kis_alter_=3A=29?=
=?iso-8859-2?Q?=5BOT=5D_konkurs_na_znak_graficzny_zespo=B3u_r ockowego?=
=?iso-8859-2?q?Jaki_znak_pocz=B1tku_linii=3F?=
=?iso-8859-1?q?swiatlo_znak=F3w_w_corelu_-_pom=F3zcie_blondynce_:(?=
ORACLE - czy da sie poprawic konkretny znak w polu typu varchar?
[oracle] jak wyciągnąć jeden znak ze stringa/zmiennej?
[mysql] konkretny znak w określonym miejscu...
=?iso-8859-1?q?Kodowanie_znak=F3w,_Perl?=
[pl/sql] znak nowej linii
zanotowane.pldoc.pisz.plpdf.pisz.plets2.xlx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|