一、如何登錄phpMyAdmin環境
phpMyAdmin可以對mysql數據庫進行完全管理。在IE地址中輸入地址,輸入數據庫帳號和密碼,登錄phpMyAdmin。
二、幾個概念
1、數據庫:在MySQL中,要存儲數據,必須從數據庫開始,因此首先要創建數據庫,但由于學校的MySQL服務器對學生數據帳號有限止,學生不得創建數據庫,故每個學生的帳號中已事先由信息中心為大家建立了一個名為帳號名的數據庫。但我們必須了解創建數據庫的語句為
CREATE DATABASE <數據庫名>
2、數據表:是構成數據庫的一個基本單位,在一個數據庫中用戶可以建立多張數據表。這是我們有權力建立的。
3、數據表結構:創建一個數據表的第一步即為創建數據表結構,在數據表結構中的內容包括:有幾個字段,每個字段的名稱,字段的類型,字段的長度,字段的屬性。
4、字段:它是構成數據表結構的必須元素,一列數據就是一個字段。
5、字段名:用來描述字段的名稱,它可以用中文、英文字母、數字等字符來描述。
6、字段類型:用來限定數據的一種方式,即每一個字段下的數據必定類型是相同的。
7、字段長度:即每一列字段中的數據位數。
三、建立第一張數據表
1、在左窗口中點擊數據庫名,
2、在右窗口中輸入數據表的名稱如number1,輸入字段數6,單擊執行,
3、按如下要求建立一張數據表:
字段名field | 字段類型(列類型) type | 屬性 | 說明 |
name | Char(8) | | 姓名 |
xb | Char(2) | | 性別 |
csrq | Date | | 出生日期 |
address | Text | | 住址 |
Byxx | Char(20) | | 畢業學校 |
zip | Int(6) | | 郵政編碼 |
注意其下的sql語句:
CREATE TABLE `number1` (
`name` CHAR( 8 ) NOT NULL ,
`xb` CHAR( 2 ) NOT NULL ,
`csrq` DATE NOT NULL ,
`address` TEXT,
`byxx` CHAR( 20 ) ,
`zip` INT( 6 ) NOT NULL
);
以上命令即是建立第一張數據表的命令,注意理解。建立數據表,我們也可以直接在代碼窗口中輸入命令也可以建立數據表。
四、字段類型(列類型)
1、字段的大類型有三種:數值型、字符型、日期/時間型,每一種大類型中也可以分成若干個列類型。
2、每種列類型均有以下幾個特性:
(1)其中可以存放什么類型的值。
(2)值要占據多少空間,以及該值是否是定長或可變長的。
(3)該類型的值是否比較和存儲
(4)此類型是否可以索引
五、學習幾種常用的列類型
1、數值類型
(1)INT[ (M) ]
說明:標準大小的整數
允許的屬性:不選(可以取正負數),UNSIGNED(無符號,取值范圍增大一倍),UNSIGED ZEROFILL(在數值前自動填0),auto_increment(自動遞增)
取值范圍:-2147483648 到2147483647(-231 到231-1),或者如果為UNSIGNED,則0 到4294967295(0 到232-1)
缺省值:如果列為NULL,則為NULL;如果列為NOT FULL,則為0
存儲需求:4 字節
同義詞:INTEGER[ (M) ]
(2)FLOAT[(M,D)](M表示顯示寬度,在D表示小數位數)
說明:小浮點數;單精度(精度小于DOUBLE)
允許的屬性:ZEROFILL
取值范圍:最小非零值為±1.75494351E-38;最大非零值為±3.402823466E+38
缺省值:如果列可為NULL,則為NULL;如果列為NOTNULL,則為0
存儲需求:4字節
同義詞:MySQL3.23版以前,FLOAT(4)為具有缺省M和D值的FLOAT的同義詞。
注釋:在MySQL3.23以后,FLOAT(4)為真浮點類型(值存儲為硬件所允許的完整精度,而不四舍五入為缺省的小數位數)。
(3)DOUBLE[(M,D)]
說明:大浮點數;雙精度(比FLOAT更精確)
允許的屬性:ZEROFILL
取值范圍:最小非零值為±2.2250738585072014E-308;最大非零值為±1。79769313-48623157E+308
缺省值:如果列可為NULL,則為NULL;如果列為NOTNULL,則為0
存儲需求:8字節
同義詞:DOUBLEPRECISION[(M,D)]和REAL[(M,D)]為DOUBLE[(M,D)]的同義詞。MySQL3.23版以前,FLOAT(8)為具有缺省M和D值的FLOAT的同義詞。
注釋:在MySQL3.23以后,FLOAT(8)為真浮點類型(值存儲為硬件所允許的完整精度,而不四舍五入為缺省的小數位數)。
2、串類型
MySQL的串類型常用來存儲文本,它不但是通用的而且還能存儲任何數據。可用串類型來存儲最大長度可變的值,而且可以選擇在處理值時是否區分大小寫。
(1)CHAR(M)
說明:0到M字節長的定長字符串。在MySQL3.23版以前,M應該為一個1到255之間的整數。而MySQL3.23版以后,M應該為一個0到255之間的整數。短于M個字符的串存儲進右邊補空格。長于M個字符的串存儲時剪斷為長度是M的串。在檢索值時,去掉后跟的空格。
允許的屬性:BINARY
允許的長度:0到M字節
缺省值:如果列可為NULL,則為NULL;如果列為NOTNULL,則為“”
存儲需求:M字節
比較:不區分大小寫(如果具有BINARY屬性,則區分大小寫)
(2)VARCHAR(M)
說明:0到M字節長的可變長字符串。M應該為1到255之間的一個整數,或者自MySQL3.23后為0到255之間的一個整數。存儲時后跟的空格被去掉。存儲時,大于M個字符的串剪斷為M個字符。
允許的屬性:BINARY
允許的長度:0到M字節
缺省值:如果列可為NULL,則為NULL;如果列為NOTNULL,則為“”
存儲需求:值的長度,加上1字節用來記錄長度
比較:不區分大小寫(如果具有BINARY屬性,則區分大小寫)
(3)TEXT
說明:常規大小的TEXT值
允許的屬性:除通用屬性外無其他屬性
允許的長度:0到65535(0到216-1)字節
缺省值:如果列可為NULL,則為NULL;如果列為NOTNULL,則為“”
存儲需求:值的長度加上用于記錄長度的2個字節
比較:不區分大小寫
(4)ENUM(“value1”,“value2”,...)
說明:枚舉,列值可賦予值列表中的某個成員
允許的屬性:除通用屬性外無其他屬性
缺省值:如果列可為NULL,則為NULL;如果列為NOTNULL,則為第一個枚舉值
存儲需求:對1到255個成員的枚舉1個字節,對255到65535個成員的枚舉2個字節
比較:不區分大小寫(MySQL3.22.1版以前區分大小寫)
(5)SET(“value1”,“value2”,...)
說明:集合,列值可賦予值列表中的零個或多個成員
允許的屬性:除通用屬性外無其他屬性
缺省值:如果列可為NULL,則為NULL;如果列為NOTNULL,則為“”(空集)
存儲需求:1字節(1到8個成員的集合),2字節(9到16個成員的集合),3字節(17到24個成員的集合),4字節(25到32個成員的集合)或8字節(33到64個成員的集合)
比較:不區分大小寫(MySQL3.22.1版以前區分大小寫)
3、日期和時間類型
MySQL提供以各種形式表示時間數據的類型。這些數據有日期和時間類型。有一種特殊的時間類型,它在記錄更改時自動更新。還有一種用于存儲年份的類型,在不需要完全的日期時使用。
(1)DATE
說明:“YYYY-MM-DD”格式的日期
允許的屬性:除通用屬性外無其他屬性
取值范圍:“1000-01-01”到“9999-12-31”
零值:“0000-00-00”
缺省值:如果列可為NULL,則為NULL;如果列為NOTNULL,則為“0000-00-00”
存儲需求:3字節(MySQL3.22版以前為4字節)
(2)TIME
說明:“HH:MM:SS”格式的時間(負值為“-HH:MM:SS”);表示占用的時間,但也可
以作為日常時間
允許的屬性:除通用屬性外無其他屬性
取值范圍:“-838:59:59”到“838:59:59”
零值:“00:00:00”
缺省值:如果列可為NULL,則為NULL;如果列為NOTNULL,則為“00:00:00”
存儲需求:3字節
注釋:雖然在非法值插入TIME列時,“00:00:00”用作零值,但它也作為一個合法的值出現在正常的取值范圍內
(3)YEAR
說明:YYYY格式表示的年份
允許的屬性:除通用屬性外無其他屬性
取值范圍:1900到2155
零值:0000
缺省值:如果列可為NULL,則為NULL;如果列為NOTNULL,則為0000
存儲需求:1字節
(4)DATETIME
說明:以“YYYY-MM-DDhh:mm:ss”格式表示的日期和時間(兩個部分都需要)
允許的屬性:除通用屬性外無其他屬性
取值范圍:“1000-01-0100:00:00”到“9999-12-3123:59:59”
零值:“0000-00-0000:00:00”
缺省值:如果列可為NULL,則為NULL;如果列為NOTNULL,則為“0000-00-00 00:00:00”
存儲需求:8字節
六、輸入記錄
單擊右窗口中的插入按鈕,在出現的記錄輸入界面下輸入數據,并選擇“插入新的一行”,再單擊“執行”。即可連續輸入多條記錄,直到選擇“后退到上一頁”,再單擊“執行”,則結束記錄的輸入。