为äºæä¾å®åçæ°æ®åºç®¡çæºå¶ï¼SQL Server 设计äºä¸¥æ ¼çå½åè§åãå¨å建æå¼ç¨æ°æ®åºå®ä½ï¼å¦è¡¨ãç´¢å¼ã约æçæ¶ï¼å¿
é¡»éµå®SQL Server çå½åè§åï¼å¦åæå¯è½åçä¸äºé¾ä»¥é¢æåæ£æ¥çé误ã
æ¬æå°è®²è¿°ï¼æ è¯ç¬¦çåç±»åæ ¼å¼è§å®ï¼æ°æ®åºå¯¹è±¡çå½åè§å®ä¸ä½¿ç¨ååãå¸æ对æ¨ä¼ææ帮å©ã
æ è¯ç¬¦åç±»
SQL Serverçææ对象ï¼å
æ¬æå¡å¨ãæ°æ®åºä»¥åæ°æ®åºå¯¹è±¡ï¼å¦è¡¨ãè§å¾ãåãç´¢å¼ã触åå¨ãåå¨è¿ç¨ãè§åãé»è®¤å¼å约æçé½å¯ä»¥æä¸ä¸ªæ è¯ç¬¦ã对ç»å¤§å¤æ°å¯¹è±¡æ¥è¯´ï¼æ è¯ç¬¦æ¯å¿
ä¸å¯å°çï¼ä½å¯¹æäºå¯¹è±¡å¦çº¦ææ¥è¯´ï¼æ¯å¦è§å®æ è¯ç¬¦æ¯å¯éçã对象çæ è¯ç¬¦ä¸è¬å¨å建对象æ¶å®ä¹ï¼ä½ä¸ºå¼ç¨å¯¹è±¡çå·¥å
·ä½¿ç¨ã
ä¾å¦ä¸é¢çSQLè¯å¥ï¼
Create table student
(
id int primary key,
name varchar(20)
)
è¿ä¸ªä¾åå建äºä¸ä¸ªè¡¨æ ¼ï¼è¡¨æ ¼çååæ¯ä¸ä¸ªæ è¯ç¬¦ï¼studentï¼è¡¨æ ¼ä¸å®ä¹äºä¸¤åï¼åçåååå«æ¯id,name,ä»ä»¬é½æ¯åæ³çæ è¯ç¬¦ãè¿ä¸ªä¾åè¿å®ä¹å¦å¤ä¸ä¸ªæªå½åç主é®çº¦æã
SQL Serverä¸å
±å®ä¹äºä¸¤ç§ç±»åçæ è¯ç¬¦ï¼è§åæ è¯ç¬¦ï¼Regular identifierï¼åçå®æ è¯ç¬¦(Delimited identifier)ã
è§åæ è¯ç¬¦
è§åæ è¯ç¬¦ä¸¥æ ¼éµå®æ è¯ç¬¦æå
³æ ¼å¼çè§å®ãæ以å¨T-SQLè¯å¥ä¸å¡æ¯è§åæ è¯ç¬¦é½ä¸å¿
使ç¨çå®ç¬¦ï¼å¦[]åââï¼æ¥è¿è¡çå®ã
å¦ä¸è¿°ä¾åä¸ä½¿ç¨ç表åstudent å°±æ¯ä¸ä¸ªè§åæ è¯ç¬¦ï¼å¨studentä¸ä¸å¿
æ·»å çå®ç¬¦ã
çå®æ è¯ç¬¦
çå®æ è¯ç¬¦æ¯é£äºä½¿ç¨äºå¦[]åââççå®ç¬¦å·æ¥è¿è¡ä½ç½®éå®çæ è¯ç¬¦ï¼ä½¿ç¨äºçå®æ è¯ç¬¦ï¼æ¢å¯ä»¥éµå®æ è¯ç¬¦å½åè§åï¼ä¹å¯ä»¥ä¸éµå®æ è¯ç¬¦å½åè§åã
Select * from [student] æ¯è¦ä»student è¡¨æ ¼ä¸æ¥è¯¢åºææçæ°æ®ä¸
Select * from student çæã
为ä»ä¹å¢ï¼å 为å¨â[]âä¸çæ è¯ç¬¦éµå®æ è¯ç¬¦å½åè§åï¼â[]â被忽ç¥ä¸è®¡ã
ä½å¦ææ¯ä¸éµå®æ è¯ç¬¦å½åè§åçæ è¯ç¬¦ï¼é£ä¹å¨T-SQLè¯å¥ä¸å¿
须使ç¨çå®ç¬¦å·å 以éå®ï¼å¦ï¼
Select * from [my table]
Where [order]=10
å¨è¿ä¸ªä¾åä¸ï¼å¿
须使ç¨çå®æ è¯ç¬¦ï¼å 为å¨fromåå¥ä¸çæ è¯ç¬¦my talbeä¸å«æç©ºæ ¼ï¼èwhereåå¥ä¸çæ è¯ç¬¦order æ¯ç³»ç»ä¿çå(å¨æ¥è¯¢åæå¨éâorderâåèè²)ãè¿ä¸¤ä¸ªæ è¯ç¬¦é½ä¸éµå®æ è¯ç¬¦å½åè§åï¼å¿
须使ç¨çå®ç¬¦ï¼å¦åæ æ³éè¿ä»£ç ç¼è¯ã
æ è¯ç¬¦æ ¼å¼
æ è¯ç¬¦æ ¼å¼çè§å®ï¼å
¶å
·ä½å
容å¦ä¸ï¼
æ è¯ç¬¦çé¦åæ¯å¿
é¡»æ¯ä»¥ä¸ä¸¤ç§æ
åµä¹ä¸ï¼
ææå¨ç»ä¸ç (Unicode)2.0æ åè§å®çå符ï¼å
æ¬26个è±æåæ¯a-zåA-Zï¼ä»¥åå
¶ä»ä¸äºè¯è¨å符ï¼å¦æ±åãä¾å¦å¯ä»¥ç»ä¸ä¸ªè¡¨æ ¼å½å为âå¦çåºæ¬æ
åµâãä¸å线â-âãâ@âæâ#âã
æ è¯ç¬¦é¦åæ¯åçå符å¯ä»¥æ¯ï¼
ææå¨ç»ä¸ç (Unicode)2.0æ åè§å®çå符ï¼å
æ¬26个è±æåæ¯a-zåA-Zï¼ä»¥åå
¶ä»ä¸äºè¯è¨å符ï¼å¦æ±åãä¸å线â-âãâ@âãâ$âæâ#âã
0,1,2,3,4,5,6,7,8,9ã
æ è¯ç¬¦ä¸å
许æ¯T-SQLçä¿çåã
ç±äºT-SQLä¸åºå大å°åï¼æ以æ 论æ¯ä¿çåç大åè¿æ¯å°åé½ä¸å
许使ç¨ã
æ è¯ç¬¦å
é¨ä¸å
许æç©ºæ ¼æç¹æ®å符ã
Select * from stu[de]nt âç¼è¯å¨å°è¿åé误信æ¯ãå 为å¨æ è¯ç¬¦stu[de]ntä¸å
å«äºç¹æ®å符â[âåâ]âï¼æ以å¨ç¼è¯ä¸è¿°è¯å¥æ¶åºéã
?
以æäºç¹æ®ç¬¦å·å¼å¤´çæ è¯ç¬¦å¨SQL Serverç³»ç»ä¸å
·æç¹å®çå«ä¹ãå¦â@âå¼å¤´çæ è¯ç¬¦è¡¨ç¤ºè¿æ¯ä¸ä¸ªå±é¨åéææ¯ä¸ä¸ªå½æ°çåæ°ï¼ä»¥â#âå¼å¤´çæ è¯ç¬¦è¡¨ç¤ºè¿æ¯ä¸ä¸ªä¸´æ¶è¡¨æåå¨è¿ç¨ï¼ä¸ä¸ªä»¥â##âå¼å¤´çæ è¯ç¬¦è¡¨ç¤ºè¿æ¯ä¸ä¸ªå
¨å±ç临æ¶æ°æ®åºå¯¹è±¡ãT-SQLçå
¨å±åé以æ å¿â@@âå¼å¤´ã为é¿å
åè¿äºå
¨å±åéæ··æ·ï¼å»ºè®®ä¸è¦ä½¿ç¨â@@âä½ä¸ºæ è¯ç¬¦çå¼å§ã
æ 论æ¯çå®æ è¯ç¬¦è¿æ¯è§åæ è¯ç¬¦é½æå¤åªè½å®¹çº³128个å符ï¼å¯¹äºæ¬å°ç临æ¶è¡¨æå¤å¯ä»¥æ116个å符ã
对象å½åè§å
SQL Server 2000 çæ°æ®åºå¯¹è±¡ååç±1-128个å符ç»æï¼ä¸åºå大å°åãå¨ä¸ä¸ªæ°æ®åºä¸å建äºä¸ä¸ªæ°æ®åºå¯¹è±¡åï¼æ°æ®åºå¯¹è±¡çå
¨ååºè¯¥ç±æå¡å¨åãæ°æ®åºåãæ¥æè
åå对象åè¿å个é¨åç»æï¼æ ¼å¼å¦ä¸ï¼
[[[server.][database].][owner_name].]object_name å½åå¿
é¡»é½è¦ç¬¦åæ è¯ç¬¦çè§å®ã
å¨å®é
å¼ç¨å¯¹è±¡æ¶ï¼å¯ä»¥çç¥å
¶ä¸æé¨åçå称ï¼åªçä¸ç©ºç½çä½ç½®ã
å®ä¾çå½åä¹ æ¯
å¨SQL Server 2000ä¸é»è®¤å®ä¾çååéç¨è®¡ç®æºåï¼å®ä¾çååä¸è¬ç±è®¡ç®æºåååå®ä¾åå两é¨åç»æã
æ»ä¹ï¼æ£ç¡®ææ¡æ°æ®åºçå½ååå¼ç¨æ¹å¼æ¯ç¨å¥½SQL Server 2000çåæï¼ä¹æå©äºç¨æ·ç解SQL Server 2000ä¸çå
¶ä»å
容ã
温馨提示:答案为网友推荐,仅供参考