mysql 快速入门DOC.docx
《mysql 快速入门DOC.docx》由会员分享,可在线阅读,更多相关《mysql 快速入门DOC.docx(33页珍藏版)》请在冰豆网上搜索。
![mysql 快速入门DOC.docx](https://file1.bdocx.com/fileroot1/2022-10/12/99cb80aa-c451-42d2-8d61-a74a1f091a3b/99cb80aa-c451-42d2-8d61-a74a1f091a3b1.gif)
mysql快速入门DOC
一.入门基础
1.连接MYSQL:
格式:
mysql-h主机地址-u用户名-p用户密码
1.1、例1:
连接到本机上的MYSQL。
首先在打开DOS窗口,然后进入目录mysqlbin,再键入命令mysql-uroot-p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:
mysql>
1.2、例2:
连接到远程主机上的MYSQL。
假设远程主机的IP为:
110.110.110.110,用户名为root,密码为abcd123。
则键入以下命令:
mysql-h110.110.110.110-uroot-pabcd123
(注:
u与root可以不用加空格,其它也一样)
1.3、退出MYSQL命令:
exit(回车)
2.修改密码
格式:
mysqladmin-u用户名-p旧密码password新密码
2.1、例1:
给root加个密码ab12。
首先在DOS下进入目录mysqlbin,然后键入以下命令
mysqladmin-uroot-passwordab12
注:
因为开始时root没有密码,所以-p旧密码一项就可以省略了。
2.2、例2:
再将root的密码改为djg345。
mysqladmin-uroot-pab12passworddjg345
3.增加新用户
格式:
grantselecton数据库.*to用户名@登录主机identifiedby"密码"
3.1例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。
首先用以root用户连入MYSQL,然后键入以下命令:
grantselect,insert,update,deleteon*.*totest1@"%"Identifiedby"abc";
3.2 例1增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法:
例2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。
grantselect,insert,update,deleteonmydb.*totest2@localhostidentifiedby"abc";
如果你不想test2有密码,可以再打一个命令将密码消掉。
grantselect,insert,update,deleteonmydb.*totest2@localhostidentifiedby"";
4.查阅版本
1mysql>selectversion(),current_date();
2+----------------+-----------------+
3|version()|current_date()|
4+----------------+-----------------+
5|3.23.25a-debug|2001-05-17|
6+----------------+-----------------+
71rowinset(0.01sec)
8mysql>
此命令要求mysql服务器告诉你它的版本号和当前日期。
尝试用不同大小写操作上述命令,看结果如何。
结果说明mysql命令的大小写结果是一致的。
练习如下操作:
1mysql>Select(20+5)*4;
2mysql>Select(20+5)*4,sin(pi()/3);
3mysql>Select(20+5)*4ASResult,sin(pi()/3);(AS:
指定假名为Result)
5.一条命令可以分成多行输入,直到出现分号“;”为止:
1mysql>select
2->USER()
3->,
4->now()
5->;
6+--------------------+---------------------+
7|USER()|now()|
8+--------------------+---------------------+
9|ODBC@localhost|2001-05-172215|
10+--------------------+---------------------+
111rowinset(0.06sec)
12mysql>
13注意中间的逗号和最后的分号的使用方法。
6.一行多条命令
1输入如下命令:
2mysql>SelectUSER();SelectNOW();
3+------------------+
4|USER()|
5+------------------+
6|ODBC@localhost|
7+------------------+
81rowinset(0.00sec)
9
10+---------------------+
11|NOW()|
12+---------------------+
13|2001-05-1723:
06:
15|
14+---------------------+
151rowinset(0.00sec)
16mysql>
17注意中间的分号,命令之间用分号隔开。
7.显示当前存在的数据库
使用SHOW语句找出在服务器上当前存在什么数据库:
1mysql>showdatabases;
2+----------+
3|Database|
4+----------+
5|mysql|
6|test|
7+----------+
82rowinset(0.06sec)
9mysql>
7.选择数据库并显示当前选择的数据库
1mysql>USEmysql
2Databasechanged
3mysql>
4(USE和QUIT命令不需要分号结束。
)
5mysql>selectdatabase();
6+---------------+
7|database()|
8+---------------+
9|mysql|
10+---------------+
111rowinset(0.00sec)
8.显示当前数据库中存在的表
1mysql>SHOWTABLES;
9.显示表(db)的内容
1mysql>select*fromdb;
10.命令的取消
当命令输入错误而又无法改变(多行语句情形)时,只要在分号出现前就可以用c来取消该条命令
1mysql>select
2->user()
3->c
4mysql>
11.创建一个数据库abccs
1mysql>CreateDATABASEabccs;
2注意不同操作系统对大小写的敏感。
12.显示表的结构:
1mysql>DESCRIBEmytable;
2+-------------+-------------+------+-----+---------+-------+
3|Field|Type|Null|Key|Default|Extra|
4+-------------+-------------+------+-----+---------+-------+
5|name|varchar(20)|YES||NULL||
6|sex|char
(1)|YES||NULL||
7|birth|date|YES||NULL||
8|deathaddr|varchar(20)|YES||NULL||
9+-------------+-------------+------+-----+---------+-------+
104rowsinset(0.00sec)
二.基本操作
1.创建,删除和最基本查询:
1显示数据库mysql->showdatabases;
2创建数据库mysql->createdatabasedb;
3删除数据库 mysql->dropdatabasedb;
4选择数据库mysql->usedb;此时你已经进入你刚才所建立的数据库db
5创建表mysql->createtablemytable(namevarchar(20),sex(char
(1),birthdate);
6删除表 mysql->droptablemytable;
7显示表的内容mysql->showtables;
8显示表的结构mysql->describemytable;
2.对列的操作
1在一个表中增加一条字段mysql->altertableyourtableaddnamevarchar(20)notnull;
2删除一个字段mysql->altertableyourtabledropname;
3.选择特定列
假如你想查看表中的所有人的姓名,则可以这样操作:
mysql>SelectnameFROMmytable;
+----------+
|name|
+----------+
|abccs|
|mary|
|tom|
+----------+
3rowinset(0.00sec)
如果想列出姓名和性别两列,则可以用逗号将关键词name和birth分开:
myaql>selectname,birthfrommytable;
3.对行的操作
1插入一条记录mysql->insertintomytablevalues('summer','m','1983-08-24');
2删除一条记录mysql->deletefrommytablewherename='summer';
3修改一条记录mysql->updatemytablesetsex='vm'wherename='summer';
4插入多条记录mysql->insertintomytableselect*fromyourtable;(这种形式的INSERT语句中,新行的数据值不是在语句正文中明确地指定的.而是语句中指定的一个数据库查询.该查询的逻辑限制:
»查询不能含有ORDERBY子句.»查询结果应含有与INSERT语句中列数目相同的列,且数据类型必须逐列兼容.)
4.在查询结果中显示列名
1用as关键字:
selectnameas'姓名'fromstudentsorderbyage
2直接表示:
s