線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:829
推到 Plurk!
推到 Facebook!

SQL语句的疑惑

尚未結案
bigdogchina
版主


發表:238
回覆:523
積分:312
註冊:2003-04-28

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-02-25 17:58:13 IP:211.162.xxx.xxx 未訂閱
小弟在用SQL语句创建表时遇到了疑惑,请您指教: 现在是在一个已存在的数据库里创建一张表:

CREATE TABLE student_Info(
student_ID    int       NOT NULL  PRIMARY KEY,
student_Name  char(10)  NOT NULL,
)    
这样用SQL语句来创建表我能理解,但是下面这样的写法我就傻眼了:

CREATE TABLE   [dbo].[student_Info](
[student_ID]   [int]  NOT   NULL,
[student_Name] [char] (10)  COLLATE Chinese_PRC_CI_AS NOT NULL,
)ON[PRIMARY]    
疑问1: dbo是具有在数据库中执行所有活动的暗示性权限的用户。第一种方法没有指明所有者是dbo,但创建出来所有者就是dbo。第二种方法还要特意指明dbo,这到底是不是画蛇添足啊? 疑问2: 第一种方法明确的指出了主键是谁,而第二种方法是在结尾用ON[PRIMARY]的形式,这样是指明谁是主键呢?这样写,感觉怪怪的。 疑问3: 第二种方法在描述char时用COLLATE Chinese_PRC_CI_AS,这又在搞什么飞机呢?我不明白 我在發問題前,先尋找了站内的相关文章,只因自己愚昧,不能理解,所以发问,请各位大大不惜指教,拜谢了!!!

===============
人生在勤,不索何获? 
===============
------
人生在勤,不索何获?
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-02-26 00:30:14 IP:61.62.xxx.xxx 未訂閱
1. 不指定 dbo 的話, 會以目前登入的 user 為 owner, 但若是 sa 的話預設就是 dbo 2. 第二種方法的 on[primary] 指的是要存放的檔案群組, 並非是主鍵值的設定, 所以第二種方法是沒有主鍵值的 3. 引述一段 help: collation_name 指定資料行的定序。定序名稱可以是 Windows 定序名稱,也可以是 SQL 定序名稱。collation_name 僅適用於 char、varchar、text、nchar、nvarchar、及 ntext 資料型別的資料行。如果未指定,將指派使用者自訂資料型別的定序 (如果資料行是使用者自訂資料型別) 或資料庫的預設定序。
bigdogchina
版主


發表:238
回覆:523
積分:312
註冊:2003-04-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-02-26 11:55:25 IP:211.162.xxx.xxx 未訂閱
非常感谢timhuang大大的解答,答题分已奉上您的回答让我豁然开朗!只不过我仍有一点小问题,乞求您指点: 就是在疑问 class="code"> =============== 人生在勤,不索何获? ===============
------
人生在勤,不索何获?
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-02-26 15:42:41 IP:203.95.xxx.xxx 未訂閱
引述一段 help 中的敍述: ========================================== 檔案與檔案群組 Microsoft® SQL Server™ 2000 會將資料庫對應至一組作業系統檔案。資料庫中所有的資料和物件,例如資料表、預存程序、觸發程序和檢視表都只儲存在下列作業系統檔案內: 主要 此檔案包含了資料庫的啟動資訊,可用來儲存資料。每個資料庫都有一個主要資料檔案。 次要 這些檔案包含不適合放在主要資料檔案中的所有資料。若主要檔案可包含資料庫中所有的資料,那麼資料庫並不需要擁有次要資料檔案。有些資料庫非常大,因此必須擁有多個次要資料檔案,或需要將次要檔案放在別的磁碟機內,以便將資料分散在多個磁碟內。 交易紀錄檔 這些檔案包含了可復原資料庫的記錄資訊。每個資料庫至少要有一個記錄檔。 例如,一個簡單的資料庫 sales 可由一個包含所有資料和物件的主要檔案,以及一個包含交易記錄資訊的記錄檔所組成。或者,較複雜的資料庫 orders 則由一個主要檔案和五個次要檔案組成;資料庫內的資料和物件分佈在這六個檔案內,而另外四個記錄檔則包含交易記錄資訊。 為了管理與資料配置/放置的用途, 檔案群組可允許檔案群組起來。例如您可將三個檔案 (data1.ndf、data2.ndf 和 data3.ndf) 分別建立於三台磁碟機內,並將它們指定至檔案群組 fgroup1。接著您可根據檔案群組 fgroup1 來建立資料表。資料表的資料查詢可分散至三個磁碟,藉此改善效能。另一個改善效能的作法是將單一檔案建立於 RAID (獨立磁碟的重複陣列,通稱磁碟陣列) 的條狀磁碟組內。總之,檔案和檔案群組都可讓您輕鬆地將新的檔案加至新的磁碟內。此外,若資料庫超過了單一 Microsoft Windows NT® 檔案的最大大小,您可使用次要資料檔,以容許資料庫繼續成長。 =============================================
bigdogchina
版主


發表:238
回覆:523
積分:312
註冊:2003-04-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-02-26 17:09:36 IP:211.162.xxx.xxx 未訂閱
感谢timhuang热诚的帮助!问题已经解决,万岁 < class="code"> =============== 人生在勤,不索何获? ===============
------
人生在勤,不索何获?
系統時間:2024-04-29 21:09:34
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!