MySQL簡(jiǎn)明教程

          進(jìn)入MySQL

            進(jìn)入mysql時(shí),你需要提供一個(gè)MySQL用戶和此用戶的口令。如果數(shù)據(jù)庫(kù)運(yùn)行在其它機(jī)器上,而不是你所在的這臺(tái)機(jī)器上,你需要指定主機(jī)名。
          命令:
          mysql -h <主機(jī)名> -u <用戶名> -p <數(shù)據(jù)庫(kù)名>
          Enter password: ********

          ********代表你的口令;當(dāng)mysql顯示Enter password:提示時(shí)輸入它。

          MYSQL 有缺省庫(kù)mysql, 在此系統(tǒng)中,缺省的口令為空,打回車(chē)即可。
          例如,在此機(jī)器上,你可以敲入:
          # mysql -u root -p mysql
          Enter password:
          屏幕如下提示:
          Welcome to the MySQL monitor. Commands end with ; or .
          Your MySQL connection id is 459 to server version: 3.22.23a-log

          Type 'help' for help.

          mysql>

          這就進(jìn)入了mysql 的工作環(huán)境, 進(jìn)入到名為mysql 的數(shù)據(jù)庫(kù)中。
          你可看見(jiàn)mysql>提示后的一些介紹信息:

          提示符 mysql> 告訴你mysql準(zhǔn)備為你輸入命令。

          我是通過(guò)cmd方式進(jìn)入mysql的,先將目錄選到..\MySQL\MySQL Server 5.0\bin>下,再在它后面敲入 mysql -hlocalhost -uroot -p<root的密碼>  按回車(chē)就可以進(jìn)去了

          退出MySQL

          在你成功地連接后,你可以在mysql>提示下打入QUIT隨時(shí)斷開(kāi):
          mysql> QUIT
          Bye
          你也可以鍵入control-D斷開(kāi)。

          操作MySQL

            在之前要指出的是:一條操作即是一條SQL語(yǔ)句,注意隨后要跟上一個(gè)分號(hào),以標(biāo)志此條語(yǔ)句的結(jié)束。而且一條SQL 語(yǔ)句不必全在一個(gè)單獨(dú)行給出,可以寫(xiě)入多行,最后以分號(hào)結(jié)束此語(yǔ)句的輸入。

            在之前要指出的是:一條操作即是一條SQL語(yǔ)句,注意隨后要跟上一個(gè)分號(hào),以標(biāo)志此條語(yǔ)句的結(jié)束。而且一條SQL 語(yǔ)句不必全在一個(gè)單獨(dú)行給出,可以寫(xiě)入多行,最后以分號(hào)結(jié)束此語(yǔ)句的輸入。

          創(chuàng)建數(shù)據(jù)庫(kù)
          命令:CREATE DATABASE <數(shù)據(jù)庫(kù)名>
          例如,建立一個(gè)名為 test 的數(shù)據(jù)庫(kù)
          mysql> CREATE DATABASE test;

          刪除數(shù)據(jù)庫(kù)
          命令: DROP DATABASE <數(shù)據(jù)庫(kù)名>
          例如,刪除名為 test 的數(shù)據(jù)庫(kù)
          mysql> DROP DATABASE test

          連接數(shù)據(jù)庫(kù)

          命令: USE <數(shù)據(jù)庫(kù)名>
          例如,如果test數(shù)據(jù)庫(kù)存在,嘗試存取它:
          mysql> USE test
          屏幕提示:
          Database changed

          建表
          命令:CREATE TABLE <表名> ( <字段名1> <類(lèi)型1> [,..<字段名n> <類(lèi)型n>]);
          例 如,建立一個(gè)名為table_1的表,此表記錄班上的人員及平均成績(jī),那么用字段 id 代表編號(hào),為數(shù)字類(lèi)型,且編號(hào)唯一,不能為空, 缺省值為 0 ; 用字段 name 代表人名,為字符型,不為空;用字段 degree 代表成績(jī),為數(shù)字型,可為空。編號(hào)id 為此表的關(guān)鍵字。建表如下:
          mysql> CREATE TABLE table_1 (
          > id INT(4) DEFAULT '0' NOT NULL,
          > name CHAR(20) NOT NULL
          > degree DOUBLE(16,2) ,
          > PRIMARY KEY(id));

          刪除
          命令:DROP TABLE <表名>
          例如,刪除表名為 table_1 的表
          mysql> DROP TABLE table_1;

          插入數(shù)據(jù)

          命令:INSERT INTO <表名> [( <字段名1>[,..<字段名n > ])]
          VALUES ( 值1 )[, ( 值n )]
          例如,往表 test 中插入二條記錄, 這二條記錄表示:編號(hào)為1的名為joan 的成績(jī)?yōu)?6.45, 編號(hào)為2 的名為jeanny 的成績(jī)?yōu)?2.99.
          mysql> INSERT INTO test VALUES(1,'joan',96.45),(2,'jeanny',82.99);

          查詢表中的數(shù)據(jù)
          命令: SELECT <字段1,字段2,...> FROM < 表名 > WHERE < 表達(dá)式 >
          例如,查看表 test 中所有數(shù)據(jù)
          mysql> SELECT * FROM test;
          屏幕顯示:
          +----+-------------+----------+
          | id | name | degree |
          +----+-------------+----------+
          | 1 | joan | 96.45 |
          | 2 | jeanny | 82.99 |
          +----+-------------+----------+ 

          刪除表中數(shù)據(jù)
          命令: DELETE FROM < 表名 > WHERE < 表達(dá)式 >
          例如,刪除表 test 中編號(hào)為1 的記錄
          mysql> DELETE FROM test WHERE id=1;

          字段類(lèi)型

             1.INT[(M)]

             正常大小整數(shù)類(lèi)型

             2.DOUBLE[(M,D)] [ZEROFILL]

             正常大小(雙精密)浮點(diǎn)數(shù)字類(lèi)型

             3.DATE

             日期類(lèi)型。支持的范圍是1000-01-01到9999-12-31。MySQL以YYYY-MM-DD格式來(lái)顯示DATE值,但是允許你使用字符串或數(shù)字把值賦給DATE列

             4.CHAR(M)

             定長(zhǎng)字符串類(lèi)型,當(dāng)存儲(chǔ)時(shí),總是是用空格填滿右邊到指定的長(zhǎng)度

             5.BLOB TEXT

             BLOB或TEXT類(lèi)型,最大長(zhǎng)度為65535(2^16-1)個(gè)字符。

             6.VARCHAR

          變長(zhǎng)字符串類(lèi)型

             1: 顯示數(shù)據(jù)庫(kù)

          SHOW DATABASES,

             2:當(dāng)前選擇的數(shù)據(jù)庫(kù),

             mysql> SELECT DATABASE();
          +------------+
          | DATABASE() |
          +------------+
          | test ;
          +------------+
          | DATABASE() |
          +------------+
          | test    |
          +------------+

            3: 當(dāng)前數(shù)據(jù)庫(kù)包含的表信息:

             mysql> SHOW TABLES;
          +---------------------+
          | Tables in test 
          mysql> SHOW TABLES;
          +---------------------+
          | Tables in test   |
          +---------------------+
          | mytable1      |
          | mytable2      |
          +---------------------+

            4: 獲取表結(jié)構(gòu)

             mysql> desc mytable1;
             +---------+-------------+------+-----+---------+-------+
          | Field  mysql> desc mytable1;
          +---------+-------------+------+-----+---------+-------+
          | Field  | Type  | Null | Key | Default | Extra |
          +---------+-------------+------+-----+---------+-------+
          | s1  | varchar(20) | YES |NULL  |    |
          +---------------------+------+-----+---------+-------+

          導(dǎo)入數(shù)據(jù)庫(kù)表

             (1)創(chuàng)建.sql文件

             (2)先產(chǎn)生一個(gè)庫(kù)如auction.c:mysqlbin>mysqladmin -u root -p creat auction,會(huì)提示輸入密碼,然后成功創(chuàng)建。

             (2)導(dǎo)入auction.sql文件

             c:mysqlbin>mysql -u root -p auction < auction.sql。

             通過(guò)以上操作,就可以創(chuàng)建了一個(gè)數(shù)據(jù)庫(kù)auction以及其中的一個(gè)表auction。

          修改數(shù)據(jù)庫(kù)

             (1)在mysql的表中增加字段:

             alter table dbname add column userid int(11) not null primary key auto_increment;

             這樣,就在表dbname中添加了一個(gè)字段userid,類(lèi)型為int(11)。

          mysql數(shù)據(jù)庫(kù)的授權(quán)

             mysql>grant select,insert,delete,create,drop

             on *.* (或test.*/user.*/..)

             to 用戶名@localhost

             identified by "密碼"; //還是建議使用這種!

             如:新建一個(gè)用戶帳號(hào)以便可以訪問(wèn)數(shù)據(jù)庫(kù),需要進(jìn)行如下操作:

             mysql> grant usage

             -> ON test.*
          -> TO testuser@localhost;
          Query OK, 0 rows affected (0.15 sec)

             此后就創(chuàng)建了一個(gè)新用戶叫:testuser,這個(gè)用戶只能從localhost連接到數(shù)據(jù)庫(kù)并可以連接到test 數(shù)據(jù)庫(kù)。下一步,我們必須指定testuser這個(gè)用戶可以執(zhí)行哪些操作:

             mysql> GRANT select, insert, delete,update
          -> ON test.*
          -> TO testuser@localhost;
          Query OK, 0 rows affected (0.00 sec)

             此操作使testuser能夠在每一個(gè)test數(shù)據(jù)庫(kù)中的表執(zhí)行SELECT,INSERT和DELETE以及UPDATE查詢操作?,F(xiàn)在我們結(jié)束操作并退出MySQL客戶程序:

             mysql> exit
          Bye



          posted on 2008-01-17 14:07 魯勝迪 閱讀(451) 評(píng)論(1)  編輯  收藏

          評(píng)論

          # re: MySQL簡(jiǎn)明教程 2008-01-23 23:22 pig_can_fly

          頂一下!  回復(fù)  更多評(píng)論   


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          <2008年1月>
          303112345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(4)

          隨筆分類(lèi)

          隨筆檔案

          文章分類(lèi)

          新聞分類(lèi)

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 奉新县| 收藏| 山阴县| 古田县| 永春县| 扶余县| 雅安市| 东辽县| 万山特区| 吉林省| 丘北县| 昔阳县| 洪泽县| 汶上县| 黄梅县| 雅江县| 湘西| 新民市| 嘉善县| 南雄市| 钦州市| 永川市| 思茅市| 石屏县| 邵阳市| 义马市| 巴林左旗| 博罗县| 邹城市| 政和县| 新宾| 宜昌市| 邳州市| 若尔盖县| 天长市| 房山区| 福鼎市| 乌兰县| 桦南县| 监利县| 奇台县|