資料庫表怎麼設計
1. 怎樣建立資料庫表格
如何在excel中創建「資料庫」
excel是一個自由表,一個EXCEL的工作薄就是一個資料庫,它裡面的每一張表就是資料庫的表,你可象操作表一樣對其進行查詢等操作,它裡面的列就是資料庫的欄位,行就是記錄,因此你可以按資料庫的架構來組建數據,只是你如果你組建的數據不符合資料庫的規則,在查詢時不能得到時相應的結果。因此在EXCEL中不存在創建資料庫。但對存在的數據可以引用。當滿足條件A、B、C、D……時引用是可以的,但如果是在EXCEL中直接引用是不行的,一種是用VBA利用ADO訪問EXCEL,在查詢時把A、B、C、D幾個條件按sql語法寫進查詢語句中,引用返回的記錄集,一種是利用函數把滿足A、B、C、D的記錄篩選出來,然後再引用。
怎麼在SQL資料庫中新建表。
可以有兩種辦法啦:
1.在企業管理器裡面建:這種方法很簡單點擊選中的資料庫右鍵新建即可相信你應該會不多說了。
2.在查詢分析器里建:基本思路要建表,表是要在庫里建的所以你要先引用你要使用的資料庫加進來再開始建表,以下為一陪扮個簡單實例;
create database student --創建一個student資料庫由於這里主要說建表所以建一個簡單的資料庫
use student --引用資料庫student
create table Test( --創建一個Test表
name varchar(20) primary key indentity(1,1),--列名(欄位名) 數據類型 在此加主鍵約束就不用加非空約束 再加上自動增長列(含義從1開始增長增長量是1)
password varchar(10) not null --注意建表最後一個欄位名時結尾不要加逗號否則會出錯
)
sqlserver 下怎麼建立資料庫 怎麼建表
方法/步驟
1
首先我們打開SQL SERVER自帶的資料庫管理工具,從開始菜單中可以找到,如圖點擊進去;
2
開始連接SQL SERVER伺服器,就是我們裝好的SQL SERVER 伺服器;
3
右擊資料庫悉仿,選擇第一個,新建一個資料庫;
4
填寫資料庫的名稱,下面是設置自動增長的,一般不用管,默認
5
點擊確定後就可以生成一個資料庫,此時裡面是沒有表的;
6
右擊表新建一個表,填寫你要的欄位名稱
7
填完欄位名稱後點擊欄位名稱那個內部窗口的小叉叉,然後就睜亂纖提示你輸入表名了,填寫下表名,一個資料庫的建立過程就是這樣的;
或者
create database stuDB
on primary -- 默認就屬於primary文件組,可省略
(
/*--數據文件的具體描述--*/
name='stuDB_data', -- 主數據文件的邏輯名稱
filename='D:\stuDB_data.mdf', -- 主數據文件的物理名稱
size=5mb, --主數據文件的初始大小
maxsize=100mb, -- 主數據文件增長的最大值
filegrowth=15%--主數據文件的增長率
)
log on
(
/*--日誌文件的具體描述,各參數含義同上--*/
name='stuDB_log',
filename='D:\stuDB_log.ldf',
size=2mb,
filegrowth=1mb
)
怎樣建立一個簡單資料庫?
把excel導入資料庫,不出現表格嵌套可以使用下面這個方法導入;
思路:
(1)、把excel數據讀入到dataset中;
(2)、建立相應結構的數據表格
(3)、把dat暢set中的數據更新到數據表中
如何在資料庫中建立表
Create table 表名字
(表欄名1 數據類型,
表欄名2 數據類型,
表欄名3 數據類型,
表欄名4 數據類型);
例如:
Create table 上課表
(學生 Varchar(10),
學號 Number(10));
如何建立一個新的ACCESS表格
新建一個資料庫有兩種方法:一種是創建一個空資料庫,即建立一個沒有表、查詢、窗體和報表等內容的資料庫;另一種方法是使用Access中提供的資料庫模板創建資料庫,即通過對向導所提出的選項和不同選擇來設計窗體、查詢和報表等,從而建立一個完整的資料庫。這里我們將使用第一種方法:
Step1:在Access窗口中單擊 「文件(F)」菜單,在下拉菜單中選擇 「新建」項,將得到對話框。
「新建」對話框
雙擊 「資料庫」 圖標,即會顯示 「文件新建資料庫」 對話框,
Step3:在文件名文本框中輸入要保存資料庫的文件夾及新建的資料庫名,如 「C:\test」,然後選擇 「確定」。即可創建好一個名為 「test」 的資料庫。
二.添加數據表
表是Access資料庫的基礎,是信息的載體。其它對象如查詢、窗體和報表,也是將表中的信息以各種形式表現出來,方便用戶使用這些信息。在Access中,創建表的方法有三種:一是使用設計器創建表;二是通過輸入數據創建表;三是利用向導創建表。在這里,我們採用第一種方法創建表:
Step4:在窗體中,雙擊 「使用設計器創建表」,則會出現對話框。
表設計器對話框
Step5:在「欄位名稱」列的第一行中輸入authors表的第一個欄位的名字 id。然後按回車鍵,此時在「數據類型」列中會顯示出一個按鈕,單擊按鈕,在彈出的下拉列表中選擇「文本」選項,設置 id 欄位的類型為文本型。
設置欄位數據類型
Step6:在「欄位屬性飢域的「常規」選項卡中,可以設置欄位的大小、格式和規則等。如我們可以把id欄位的長度大小設置為12,並且規定其不能為空,因此,可以設置如下:在 「欄位大小」文本框中輸入12,在 「必填欄位」文本框中輸入「是」,在「允許空字元串」文本框中輸入「否」。
設置欄位屬性內容
Step7:重復上述方法,添加其它欄位,並設置其屬性。
Step8:設置完成後,單擊 「文件(F)」菜單,在下拉菜單中選擇 「保存」項,將會出現一個如圖1.8的對話框,在「表名稱」文本框中輸入表名 authors,單擊確定按鈕。
「保存」對話框
Step9:此時,系統會提示用戶建立一關鍵欄位。一般情況下單擊「是」完成即可。
如何用mysql創建創建博客資料庫表
1.創建一個資料庫為test_db
mysql> create database test_db;
Query OK, 1 row affected (0.00 sec)
切換到test_db上
mysql> use test_db;
Database changed
mysql>
2.創建一個表tb_emp1
create table tb_emp1
(
id INT(11),
name VARCHAR(25),
deptid INT (11),
salary FLOAT
);
mysql> create table tb_emp1
-> (
-> id INT(11),
-> name VARCHAR(25),
-> deptid INT (11),
-> salary FLOAT
-> );
Query OK, 0 rows affected (0.09 sec)
MYsql資料庫怎樣創建表? 20分
CREATE DATABASE cookbook; 創建一個叫「cookbook」的資料庫
USE cookbook; 使用cookbook這個資料庫
CREATE TABLE limbs (thing VARCHAR(撫0),legs INT,arms INT); 創建表「limbs」其中包括thing,legs,aems 欄位
創建表的命令是 CREATE TABLE 表名稱
後面括弧里的內容是表中欄位的屬性
如何 SQL創建表
商品表
create table proct
(
proid varchar(20) primary key,
proname varchar(50),
proprice money,
procount int
);
顧客表
create table customer
(
custno varchar(20) primary key,
custname varchar(50),
custsex varchar(10),
custage int,
custtel varchar(20)
);
訂單表
create table orderitem
(
custno varchar(20),
proid varchar(20),
ocount int,
oprice money,
odate date
);
外鍵
alter table orderitem add constraint fk_custno foreign key(custno) references customer(custno);
alter table orderitem add constraint fk_proid foreign key(proid) references proct(proid);
SQL資料庫怎麼創建表.
CREATE TABLE [dbo].[student]( [學號] [CHAR](8) NOT NULL, [姓名] [CHAR](8) NULL, [性別] [CHAR](2) NULL, [年齡] [INT] NULL, [聯系方式] [CHAR](11) NULL, [所在院系] [CHAR](20) NULL, CONSTRAINT [PK_student] PRIMARY KEY CLUSTERED ( [學號] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NOREPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOSET ANSI_PADDING OFFGOALTER TABLE [dbo].[student] WITH CHECK ADD CONSTRAINT [CK_student] CHECK (([性別]='女' OR [性別]='男'))GOALTER TABLE [dbo].[student] CHECK CONSTRAINT [CK_student]GOALTER TABLE [dbo].[student] WITH CHECK ADD CONSTRAINT [CK_student_1] CHECK (([聯系方式] LIKE '[0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'))GOALTER TABLE [dbo].[student] CHECK CONSTRAINT [CK_student_1]GOALTER TABLE [dbo].[student] ADD CONSTRAINT [DF_student_所在院系] DEFAULT ('電信系') FOR [所在院系]GO
2. 1,資料庫表結構如何設計,有哪些表,分別有什麼作用
一般可將資料庫結構設計分為四個階段,即需求分析、概念結構設計、邏輯結構設計和物理設計。
數據字典(Data Dictionary DD)用於記載系統定義的或中間生成的各種數據、數據元素,以及常量、變數、數組及其他數據單位,說明它們的名字、性質、意義及各類約束條件,是系統開發與維護中不可缺少的重要文件。數據與數據元素分別用數據表、數據元素表記載。其中,數據號是設計人員給定的順序編號,用於分類清查與整理,並且與數據元素代碼相關聯。數據名是原有表格或憑證的名稱。
3. 如何進行資料庫的設計
資料庫設計就是根據業務系統的具體需要,結合我們所選用的資料庫管理系統,為這個業芹念務系統構大首行造出最優的數據存儲模型。並建立好的資料庫中的表結構及表與表之間的關聯關系的過程。使之能有效的對應用系統中的數據進行存儲,並可滾嘩以高效的對已經存儲的數據進行訪問。資料庫設計的步驟為需求分析,邏輯設計,物理設計,維護優化。
4. 資料庫表的設計
用戶表:{用戶編號(PK),用戶名,密碼,用戶類別, 所屬專業號(FK)}
課程表:{課程編號(PK),課程名,用戶編號(FK) ,學分}
院 系:{院系編號(PK),院名}
專 業:{專業號(PK),專業名稱 ,專業簡介 ,總學時,所屬院號(FK)}
參考書:{索書號(PK),課程編號(FK),ISBN/ISSN,責任者,出版日期,校圖書館連接地址,電子書連接地址}
專業課程表{專業號,課程編號} 聯合主鍵
5. 如何設計動態欄位的產品資料庫表
可以採用四種技術:
動態增加資料庫表欄位
預留足夠的空白欄位,運行時作動態影射
用xml格式保存在單欄位里
改列為行,用另外一個表存放定製欄位
【一】
現在我們來分析一下四種技術的優劣,不過首先可以排除的是第一點動態增加欄位的方法,因為在實際操作時候幾乎是不可能的(sqlserver太慢,oracle索性不支持),基本可以不討論就排除。剩耐段下後三點。
【二】
先來討論預留空白欄位的方法,基本原理就是在資料庫表設計的時候加入一些多餘的欄位,看下面的代碼:
CREATE TABLE Sample(
name varchar(12),field0 varchar(1),field1 varchar(1),fieldN varchar(1)
}
然後看實際運行時候的需要,動態分配欄位給系統使用,也許需要一個這樣的結構來描述分配情況:
public class Available
{
public int ;
public Hashtable ;
}
也許某一時刻的數據狀況是這樣的: =3,哈西表包含內容是("field0"="SomeId", "field1"="AnyName","field2=IsOk")
現在的問題是如果要配合Hibernate,如何來處理?以上段的數據使用狀況為例子,如果我們的類定義是這樣:
public class Entity01、{
public string Name;
public string SomeId;
public string AnyName;
public bool IsOk;
}
也許只需要修改一下xxx.hbm.xml,把 SomeId 和 field0
做成對應就ok了。但是在運行時我們怎麼知道會有這樣的類定義?除非我們做動態代碼生成,自動編譯也許可以,但是問題也許就到其他方面去了;如果我們不用動態定義,那麼類就只能是這樣:
public class Entity01、{
public string Name;
public Hashtable ;
}
使用的時候,用 entity01..setValue("AnyName", "boss")
的方式來引用,也許這樣是修改最少的了,但是問題是Hibernate不支持這樣的方法。
【三】
再來討論單欄位存儲的方法,我們使用這樣的資料庫表定義
CREATE TABLE Sample
(
Name varchar(12),Xml CLOB(102400) // 僅作說明而已
)
然後對應這樣的類定義
public class Entity01、{
public string Name;
public string Xml;
public Hashtable ;
}
我們的代碼就可以這樣使用:string id =
entity01..getValue("SomeId")
了。這樣解決看起來很不錯,不僅不需要Available表,而且看起來Hibernate對它的支持也很完美,但是致命的問題在於:如果保持高效的查詢?除非資料庫系統本身對此有支持,否則就只能用低效的substring或者like做查詢,這在大批量數據中根本就不可行。
是不是折衷一下,把兩種方法的優點和起來?問題有來了:怎麼保持兩者之間數據的同步?難道要我們用存儲過程去解析xml內容?
所以,一個兩難的問題,需要我們認真去解決。我們通過認真的需求分析,也許可以減少可變欄位的數量,但是只要有一個可變欄位或者可變的可能性存在,我們始終要去解決這個兩難的問題。
期待繼續討論。
【四】
還有一種方法就是改列為行,用另外一個表存放擴展欄位,定義可以如下:
CREATE
TABLE
(
idSample Integer,fieldName varchar(30),fieldValue varchar(100)
)
其中idSample關聯到Sample表的id欄位(我沒有寫出來)。這樣的話,Hibernate很容易支持,也可以支持Sql的查詢,而且可以支持把內容放到Hashtable中去,看起來是目前最好的方式了。但是在大容量數據的時候,表的昌中譽數據會是主表數據量的N倍(看定製的欄位數目多少而定),同樣存在有很嚴重的培如性能問題。
6. 資料庫設計的步驟有哪些
資料庫設計過程分為以下六個階段:
1、需求分析階段
准確理解和分析用戶需求(包括數據和處理),它是整個設計過程的基礎,也是最困難、最耗時的一步。
2、概念結構設計階段
是整個資料庫設計的關鍵,通過對用戶需求的集成、歸納和抽象,形成了一個獨立於特定資料庫管理系統的概念模型。
3、邏輯結構設計階段
將概念結構轉換為DBMS支持的數據模型,對其進行優化。
4、資料庫物理設計階段
為邏輯數據模型選擇最適合應用程序環境的物理結構(包括存儲結構和存取方法)。
5、資料庫實現階段
根據邏輯設計和物理設計的結果,使用資料庫管理系統提供的數據語言、工具和主機語言,建立資料庫,編寫調試應用程序,組織數據倉庫,並進行試運行。
6、資料庫運行維護階段
資料庫應用系統經試運行後可投入正式運行,在資料庫系統運行過程中,需要不斷地對其進行評估、調整和修改。
註:在設計過程中,將資料庫的設計與資料庫中數據處理的設計緊密結合起來,在每個階段同時對這兩個方面的要求進行分析、抽象、設計和實現,相互借鑒和補充,從而完善這兩個方面的設計。
(6)資料庫表怎麼設計擴展閱讀:
資料庫設計技術
1、清晰的用戶需求:作為計算機軟體開發的重要基礎,資料庫設計直接反映了用戶的需求。資料庫必須與用戶緊密溝通,緊密結合用戶需求。在定義了用戶開發需求之後,設計人員還需要反映具體的業務關系和流程。
2、注意數據維護:設計面積過大、數絕遲御據過於復雜是資料庫設計中常見的問題,設計人員應注意數據維護。旦碰
3、增加命名規范化:命名資料庫程序和文件非常重要,不僅要避免重復的名稱,還要確保數據處於平衡狀態。為了降低檢索信息和資源的復雜度和難度,設計人員應了解資料庫程序與文件之並岩間的關系,並靈活使用大小寫字母命名。
4、充分考慮資料庫的優化和效率:考慮到資料庫的優化和效率,設計人員需要對不同表的存儲數據採用不同的設計方法。在設計中,還應該使用最少的表和最弱的關系來實現海量數據的存儲。
5、不斷調整數據之間的關系:不斷調整和簡化數據之間的關系,可以有效減少設計與數據之間的聯系,進而為維護數據之間的平衡和提高數據讀取效率提供保障。
6、合理使用索引:資料庫索引通常分為聚集索引和非聚集索引,這樣可以提高數據搜索的效率。
參考資料來源:網路-資料庫設計