在php中需要用到的mysql数据库的简单操作

时间:2021-04-24 15:56:24

1.数据库连接

1.1用windows命令行链接数据库服务器

几个DOS命令

在DOS环境下命令后面没有分号,在MySQL环境下,命令后面有分号

进入盘符:

语法:盘符:

进入盘符下的某个文件夹

语法:cd 路径

上级目录:  ../

进入根目录:  /

1.2链接MySQL服务器需要的参数

Host         主机       -h

Username    用户名     -u

Password     密码       -p

Port         端口       -P

E:\wamp\bin\mysql\mysql5.6.17\bin\mysql -hlocalhost -uroot -p -P3306

如果端口号是3306时,端口号可以省略。

如果链接的是本地MySQL,数据库地址也可以省略。

E:\wamp\bin\mysql\mysql5.6.17\bin\mysql -uroot -p

2.退出数据库

A)  exit;

B)  quit;

C)  \q;

2.数据库的操作

2.1创建数据库

语法:

Create   database   数据库名;

B)如果创建的数据库已存在,会报错;

C)创建的时候判断一下,如果不存在就创建;

语法:create   database   if   not   exists  数据库名;

D) 创建数据库的时候指定字符编码

语法:create   database   数据库名  charset=字符编码;

2.2查询数据库

语法:show   databases;

2.3.显示数据库的创建语句

语法:show  create   database   数据库名;

2.4更改数据库

更改数据库的字符编码

语法:alter   database   数据库名 charset=字符编码;

2.5删除数据库

A)语法; drop   database 数据库名;

B)如果删除不存在的数据库,会报错。

C)在删除之前要判断数据库是否存在,如果存在才才删除。

语法:drop  database   if   exists 数据库名;

2.6选择数据库

A)语法:   use 数据库名;

3.数据库表的操作

3.1几个概念

行也叫记录,一行就是一条记录。

列也叫字段,一列是一个字段。字段也叫属性。

一个表中包含多个字段。

3.2 创建表

语法:

Create  table  表名(

字段1   数据类型  [null | not null]   [default]  [auto increment]   [primary key],

字段2   数据类型

..........

)

Not null :不为空

Default: 默认值

auto increment:自动增长

Primary key: 主键

(特点:不能重复,不能为空,一个表只能有一个主键,主键可以由 多个字段一起组成)

3.3数据类型

Int :整形

Decimal(总位数,小数位数):存小数

Char( ): 字符(定长)

Varchar():字符(可变长度)

text :大段文本

3.4查看所有表

语法:  show   tables;

3.5显示创建表的语句

语法:  show  create   table  表名 [\G];

\G:表示table和create   table字段竖排

3.6显示表结构

describe  表名;(可以把describe简写为desc)

Describe:描述

3.7删除表

语法:drop   table   表名;

删除多个表:drop   table   表1,表2,....;

3.8创建复杂的表

4.数据的操作

4.1插入数据(增)

A)语法:inset into 表名(字段名1,字段名2......)values(值1,值2.....)

B)插入字段可以和数据库的字段的顺序不一致,但是值和插入的字段的顺 序必须一致

C)当插入的值和数据表的字段顺序和个数都一致时,插入字段是可以省略 的。

D)自动增长的插入

Insert  into  stu values(null,’李清照’,’女’,’上海’,78);

E)默认值的插入

Insert  into  stu  values(null,’辛弃疾’,’男’,default,90);

4.2修改数据(改)

语法 : update 表名  set 字段1=值1,字段2=值2  where条件

例:把李白的性别改成女。

update  stu  set  stu_sex=’女’  where  stu_name=’李白’;

把所有的性别都变成女。

update  stu  set  stu_sex=’女’;

4.3查询数据(查)

A)语法:

select 列名  from  表[where 条件]  [order by 排序]

[limit 限制 起始位置,获取的记录数];

排序:升序   asc

降序   desc

Limit中的起始位置是从0开始的。

B)运算符

i.比较运算符

运算符                           描述

>

>=

<

<=

=

等于

<>

不等于

ii.逻辑运算符

运算符                        描述

and

or

not

例:1.查询所有学生的姓名和性别

select  stu_name,stu_sex  from  stu;

2.查询所有学生的所有信息。

select  *  from  stu;

3.查询所有男生的信息。

select  *  from  stu  where  stu_sex='男';

4.查询所有的女生和北京的男生的信息。

select  *  from stu where stu_sex='女' or (stu_sex='男'  and stu_address='北京');

5.按成绩由高到低排列。

select  *  from  stu  order  by  stu_ score  desc;

6.取前二个学生的信息。

select * from stu limit 2;

7.从第二个学生开始,取两个学生的成绩。

select * from stu limit 1,2;

8.找出前两名。

select * from stu order by  stu_score  desc  limit 2;

4.4删除数据

语法:delete  from 表名 [where 条件];

例:1.删除李白

Delete from stu where stu_name=’李白’;

2.删除表中的所有数据。

delete from stu;