freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

mysql金典培訓教程:06第三章(編輯修改稿)

2025-07-26 08:23 本頁面
 

【文章內(nèi)容簡介】 除數(shù)據(jù)庫:shell mysqladmin drop db_name如果出現(xiàn)下面的錯誤:mysqladmin: connect to server at 39。localhost39。 failederror: 39。Access denied for user: 39。root@localhost39。 (Using password: YES)39。表示你需要一個可以正常連接的用戶,請指定u p 選項,具體方法與 節(jié)介紹相同,在第七章中你將會學到用戶授權(quán)的知識。 直接在數(shù)據(jù)庫目錄中創(chuàng)建或刪除用上述方法創(chuàng)建數(shù)據(jù)庫,只是 MySQL 數(shù)據(jù)目錄下面創(chuàng)建一個與數(shù)據(jù)庫同名目錄,同樣刪除數(shù)據(jù)庫是把這個目錄刪除。所以,你可以直接這么做,創(chuàng)建或刪除數(shù)據(jù)庫,或者給數(shù)據(jù)庫更名。這對備份和恢復(fù)備份有一定意義。 用 USE 選用數(shù)據(jù)庫句法:USE db_name USE db_name 語句告訴 MySQL 使用 db_name 數(shù)據(jù)庫作為隨后的查詢的缺省數(shù)據(jù)庫。數(shù)據(jù)庫保持到會話結(jié)束,或發(fā)出另外一個 USE 語句: mysql USE db1。mysql SELECT count(*) FROM mytable。 selects from mysql USE db2。mysql SELECT count(*) FROM mytable。 selects from 如果你不是用 USE 語句,那么上面的例子應(yīng)該寫成:mysql SELECT count(*) FROM 。mysql SELECT count(*) FROM 。57 / 30由于 use 也是一個 mysql 客戶程序的命令,所以你可以在命令行最后不加分號,客戶程序可以得到結(jié)果。 總結(jié)本節(jié)介紹了有關(guān)數(shù)據(jù)庫操作的 SQL 語句、實用程序,其中包括:? SQL 語句: CREATE/DROP DATABASE,SHOW DATABASES,USE? 程序 mysqladmin? 直接創(chuàng)建或刪除數(shù)據(jù)庫的目錄 有關(guān)數(shù)據(jù)表的操作用 MySQL,目前(版本 )你可以在三種基本數(shù)據(jù)庫表格式間選擇。當你創(chuàng)建一張表時,你可以告訴 MySQL 它應(yīng)該對于表使用哪個表類型。MySQL 文件保存表和列定義。視表類型而定,索引和數(shù)據(jù)將在其他文件中存儲。 你能用 ALTER TABLE 語句在不同類型的表之間變換。見 ALTER TABLE 語法。 ? MyISAM 在 MySQL 中,MyISAM 是缺省表格類型,它是基于 ISAM 代碼并且有很多有用的擴展。(MYindex)(MYData)擴展名的文件中。你能用 myisamchk 實用程序檢查/修復(fù) MyISAM 表。? ISAM你也可以使用放棄的 ISAM。這將在不久消失,因為 MyISAM 是同一個東西的更好實現(xiàn)。ISAM 使用一個 Btree 索引,這個索引存儲在一個有 .ISM 擴展名的文件中,你可用 isamchk 實用程序檢查/修復(fù) ISAM 表。ISAM 表不是跨 OS/平臺二進制可移植的。? HEAP HEAP 表格使用一個雜湊(hashed)索引并且存儲在內(nèi)存中。這使他們更快,但是如果 MySQL崩潰,你將失去所有存儲的數(shù)據(jù)。HEAP 作為臨時表很可用! 用 SHOW/ DESCRIBE 語句顯示數(shù)據(jù)表的信息句法:SHOW TABLES [FROM db_name] [LIKE wild]or SHOW COLUMNS FROM tbl_name [FROM db_name] [LIKE wild]or SHOW INDEX FROM tbl_name [FROM db_name]or SHOW TABLE STATUS [FROM db_name] [LIKE wild]{DESCRIBE | DESC} tbl_name {col_name | wild}你能使用 作為 tbl_name FROM db_name 句法的另一種選擇。? SHOW TABLES 列出在一個給定的數(shù)據(jù)庫中的表。你也可以用 mysqlshow db_name 命令得到這張表。 注意:如果一個用戶沒有一個表的任何權(quán)限,表將不在 SHOW TABLES 或 mysqlshow db_name 中的輸出中顯示。? SHOW COLUMNS 列出在一個給定表中的列。如果列類型不同于你期望的是基于CREATE TABLE 語句的那樣,注意,MySQL 有時改變列類型。? DESCRIBE 語句提供了類似 SHOW COLUMNS 的信息。DESCRIBE 提供關(guān)于一張表的列的信息。col_name 可以是一個列名字或包含 SQL 的“%”和“_”通配符的一個字符串。這個語句為了與 Oracle 兼容而提供的。 ? SHOW TABLE STATUS(在版本 引入)運行類似 SHOW STATUS,但是提供每個表的更多信息。你也可以使用 mysqlshow status db_name 命令得到這張表。 ? SHOW FIELDS 是 SHOW COLUMNS 一個同義詞,SHOW KEYS 是 SHOW INDEX 一個同義詞。? 你也可以用 mysqlshow db_name tbl_name 或 mysqlshow k db_name tbl_name 列出一張表的列或索引。? SHOW INDEX 以非常相似于 ODBC 的 SQLStatistics 調(diào)用的格式返回索引信息。 使用 mysqlshow 工具得到信息下面簡單介紹一下 mysqlshow 實用程序的用法,在得到數(shù)據(jù)庫和表的信息上,使用起來非常方便。得到已有數(shù)據(jù)庫的列表:shell mysqlshow 列出某數(shù)據(jù)庫 db_name 中已有的表:shell mysqlshow db_name列出某數(shù)據(jù)庫表 的結(jié)構(gòu)信息:shellmysqlshow db_name tbl_name列出一張表的索引:shell mysqlshow –k db_name tbl_name 用 CREATE TABLE 語句創(chuàng)建數(shù)據(jù)表用 CREATE TABLE 語句創(chuàng)建表。此語句的完整語法是相當復(fù)雜的,因為存在那么多的可選子句,但在實際中此語句的應(yīng)用相當簡單。如我們在第 1 章中使用的所有 CREATE TABLE 語句都不那么復(fù)雜。有意思的是,大多數(shù)復(fù)雜東西都是一些子句,這些子句 MySQL 在分析后扔掉。參閱附錄 1 可以看到這些復(fù)雜的東西。 CREATE TABLE 語句的基本語法CREATE TABLE tbl_name(create_definition,...) [TYPE =table_type]create_definition: col_name type [NOT NULL | NULL] [DEFAULT default_value] [AUTO_INCREMENT][PRIMARY KEY]在 或以后版本中,表名可以被指定為 ,不管有沒有當前的數(shù)據(jù)庫都可以。例如,創(chuàng)建一個訪問者留言表:shell mysql –u root –pmysql create database mytest。mysql CREATE TABLE  guestbook ( visitor VARCHAR(40), ments TEXT,59 / 30 entrydate DATETIME)。 如果一切正常,祝賀你,你已經(jīng)建立了你的第一個表! 你所創(chuàng)建的表名為 guestbook,你可以使用這個表來存儲來字你站點訪問者的信息。你是用REEATE TABLE 語句創(chuàng)建的這個表,這個語句有兩部分:第一部份指定表的名子;第二部份是括在括號中的各字段的名稱和屬性,相互之間用逗號隔開。 表 guestbook 有三個字段:visitor,ments 和 entrydate。visitor 字段存儲訪問者的名字,ments 字段存儲訪問者對你站點的意見,entrydate 字段存儲訪問者訪問你站點的日期和時間。 注意每個字段名后面都跟有一個專門的表達式。例如,字段名 ments 后面跟有表達式TEXT。這個表達式指定了字段的數(shù)據(jù)類型。數(shù)據(jù)類型決定了一個字段可以存儲什么樣的數(shù)據(jù)。因為字段 ments 包含文本信息,其數(shù)據(jù)類型定義為文本型。 如何指定表的類型你也可以在創(chuàng)建表時指定表的類型,如果不指定表的類型,在 及以前版本中缺省為 ISAM表,在 版本中缺省為 MyISAM 表。你應(yīng)該盡量使用 MyISAM 表。指定表的類型經(jīng)常用于創(chuàng)建一個 HEAP 表:mysql CREATE TABLE fast(id int,articles TEXT) TYPE=HEAP。隱含的列說明的改變在某些情況下,MySQL 隱含地改變在一個 CREATE TABLE 語句給出的一個列說明。(這也可能在 ALTER TABLE。) ? 長度小于 4 的 VARCHAR 被改變?yōu)?CHAR。 ? 如果在一個表中的任何列有可變長度,結(jié)果是整個行是變長的。因此, 如果一張表包含任何變長的列(VARCHAR、TEXT 或 BLOB),所有大于 3 個字符的 CHAR 列被改變?yōu)閂ARCHAR 列。這在任何方面都不影響你如何使用列;在 MySQL 中,VARCHAR 只是存儲字符的一個不同方法。MySQL 實施這種改變,是因為它節(jié)省空間并且使表操作更快捷。 ? TIMESTAMP 的顯示尺寸必須是偶數(shù)且在 2 ~ 14 的范圍內(nèi)。如果你指定 0 顯示尺寸或比14 大,尺寸被強制為 14。從 1~13 范圍內(nèi)的奇數(shù)值尺寸被強制為下一個更大的偶數(shù)。 ? 你不能在一個 TIMESTAMP 列里面存儲一個文字 NULL;將它設(shè)為 NULL 將設(shè)置為當前的日期和時間。因為 TIMESTAMP 列表現(xiàn)就是這樣,NULL 和 NOT NULL 屬性不以一般的方式運用并且如果你指定他們,將被忽略。DESCRIBE tbl_name 總是報告該 TIMESTAMP列可能賦予了 NULL 值。 如果你想要知道 MySQL 是否使用了除你指定的以外的一種列類型,在創(chuàng)建或改變你的表之后,發(fā)出一個 DESCRIBE tbl_name 語句即可。 利用 SELECT 的結(jié)果創(chuàng)建表關(guān)系數(shù)據(jù)庫的一個重要概念是,任何數(shù)據(jù)都表示為行和列組成的表,而每條 SELECT 語句的結(jié)果也都是一個行和列組成的表。在許多情況下,來自 SELECT 的“表”僅是一個隨著您的工作在顯示屏上滾動的行和列的圖像。在 MySQL 以前,如果想將 SELECT 的結(jié)果保存在一個表中以便以后的查詢使用,必須進行特殊的安排:1) 運行 DESCRIBE 或 SHOW COLUMNS 查詢以確定想從中獲取信息的表中的列類型。2) 創(chuàng)建一個表,明確地指定剛才查看到的列的名稱和類型。3) 在創(chuàng)建了該表后,發(fā)布一條 INSERT ... SELECT 查詢,檢索出結(jié)果并將它們插入所創(chuàng)建的表中。在 MySQL 中,全都作了改動。CREATE TABLE ... SELECT 語句消除了這些浪費時間的東西,使得能利用 SELECT 查詢的結(jié)果直接得出一個新表。只需一步就可以完成任務(wù),不必知道或指定所檢索的列的數(shù)據(jù)類型。這使得很容易創(chuàng)建一個完全用所喜歡的數(shù)據(jù)填充的表,并且為進一步查詢作了準備。? 如果你在 CREATE 語句后指定一個 SELECT,MySQL 將為在 SELECT 中所有的單元創(chuàng)鍵新字段。例如:mysql CREATE TABLE test (a int not null auto_increment,primary key (a), key(b)) SELECT b,c from test2。這將創(chuàng)建一個有 3 個列(a,b,c)的表,其中 b,c 列的數(shù)據(jù)來自表 test2。注意如果在拷貝數(shù)據(jù)進表時發(fā)生任何錯誤,表將自動被刪除。 ? 可以通過選擇一個表的全部內(nèi)容(無 WHERE 子句)來拷貝一個表,或利用一個總是失敗的 WHERE 子句來創(chuàng)建一個空表,如:mysql CREATE TABLE test SELECT * from test2。mysql CREATE TABLE test SELECT * from test2 where 0。如果希望利用 LOAD DATA 將一個數(shù)據(jù)文件裝入原來的文件中,而不敢肯定是否具有指定的正確數(shù)據(jù)格式時,創(chuàng)建空拷貝很有用。您并不希望在第一次未得到正確的選項時以原來表中畸形的記錄而告終。利用原表的空拷貝允許對特定的列和行分隔符用 LOAD DATA 的選項進行試驗,直到對輸入數(shù)據(jù)的解釋滿意時為止。在滿意之后,就可以將數(shù)據(jù)裝入原表了??山Y(jié)合使用 CREATE TEMPORARY TABLE 與 SELECT 來創(chuàng)建一個臨時表作為它自身的拷貝,如:這允許修改 my_tbl 的內(nèi)容而不影響原來的內(nèi)容。在希望試驗對某些修改表內(nèi)容的查詢,而又不想更改原表內(nèi)容時,這樣做很有用。為了使用利用原表名的預(yù)先編寫的腳本,不需要為引用不同的表而編輯這些腳本;只需在腳本的起始處增加 CREATE TEMPORARY TABLE 語句即可。相應(yīng)的腳本將創(chuàng)建一個臨時拷貝,并對此拷貝進行操作,當腳本結(jié)束時服務(wù)器會自動刪除這個拷貝。要創(chuàng)建一個作為自身的空拷貝的表,可以與 CREATE TEMPORARY ... SELECT 一起使用 WHERE 0 子句,例如:但創(chuàng)建空表時有幾點要注意。在創(chuàng)建一個通過選擇數(shù)據(jù)填充的表時,
點擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1