mysql_语法总结_MySQL

WBOY
풀어 주다: 2016-06-01 13:34:27
원래의
789명이 탐색했습니다.

bitsCN.com

环境:mysql 5.5

创建数据库test:

1 create database test;
로그인 후 복사

我们执行代码就可以创建test数据库了,如果想要查看我们是否创建好了数据库test,我们可以通过一下代码查看mysql中的所有数据库

show databases;
로그인 후 복사

在我机器上面查询出来的是:

mysql> show databases;+--------------------+| Database           |+--------------------+| information_schema || drp                || duona              || expert             || jeecgv3            || mysql              || performance_schema || sample             || test               || test_uuuu_test     |+--------------------+10 rows in set
로그인 후 복사

我们可以看到,在数据库中我们已经创建好了test数据库了。

现在我们就选定了test数据库了,接下来如果我们希望删除test数据库,我们只需要使用下面的sql语句即可:

mysql> drop database test;Query OK, 0 rows affected
로그인 후 복사

现在我们再次查询mysql中所有的数据库情况:

mysql> show databases;+--------------------+| Database           |+--------------------+| information_schema || drp                || duona              || expert             || jeecgv3            || mysql              || performance_schema || sample             || test_uuuu_test     |+--------------------+9 rows in set
로그인 후 복사

可以发现,test数据库已经被我们删除。

//回到test没被删除的状态
로그인 후 복사

现在我们需要操作test数据库,我们可以使用下面代码,选择数据库test:

mysql> use test;Database changed
로그인 후 복사

我们需要查看test数据库中现在有多少张表,可以使用:

mysql> show tables;Empty set
로그인 후 복사

我们可以清楚的看到,现在test中是没有任何表的。

那么现在我们就往里面添加一张表吧!

mysql> create table student(id int not null primary key,name varchar(20) not null unique);Query OK, 0 rows affected
로그인 후 복사

我们往test数据库中添加了一张student表,表中有id,name字段。

现在再看一下test中的表情况:

mysql> show tables;+----------------+| Tables_in_test |+----------------+| student        |+----------------+1 row in set
로그인 후 복사

你会发现,现在增加了student表了。

我们也可以看看student的表机构情况:

mysql> desc student;+-------+-------------+------+-----+---------+-------+| Field | Type        | Null | Key | Default | Extra |+-------+-------------+------+-----+---------+-------+| id    | int(11)     | NO   | PRI | NULL    |       || name  | varchar(20) | NO   | UNI | NULL    |       |+-------+-------------+------+-----+---------+-------+2 rows in set
로그인 후 복사

所以对于上面的创建student表的sql语句的大概意思你可以猜出来了吧:

student表有id,name两个字段,对于id字段,类型是int整形,mysql默认长度是11,id字段不能为null,即不能为空,id字段为主键,即primary key,没有默认值

对于name字段,和id字段差不多,类型为varchar类型,长度为20,不能为空,在表中时唯一的(unique,在同一个表中不能出现相同的值),没有默认值

现在我们想在student表中增加一个字段age,类型为int类型:

mysql> alter table student add age int;Query OK, 0 rows affectedRecords: 0  Duplicates: 0  Warnings: 0
로그인 후 복사

我们再看看表的结构:

mysql> desc student;+-------+-------------+------+-----+---------+-------+| Field | Type        | Null | Key | Default | Extra |+-------+-------------+------+-----+---------+-------+| id    | int(11)     | NO   | PRI | NULL    |       || name  | varchar(20) | NO   | UNI | NULL    |       || age   | int(11)     | YES  |     | NULL    |       |+-------+-------------+------+-----+---------+-------+3 rows in set
로그인 후 복사
로그인 후 복사

说明我们确实是增加了age这个字段。

现在我们需要增加生日birthday字段,类型为date类型:

mysql> alter table student add birthday date;Query OK, 0 rows affectedRecords: 0  Duplicates: 0  Warnings: 0
로그인 후 복사

我们查看student表结构:

mysql> desc student;+----------+-------------+------+-----+---------+-------+| Field    | Type        | Null | Key | Default | Extra |+----------+-------------+------+-----+---------+-------+| id       | int(11)     | NO   | PRI | NULL    |       || name     | varchar(20) | NO   | UNI | NULL    |       || age      | int(11)     | YES  |     | NULL    |       || birthday | date        | YES  |     | NULL    |       |+----------+-------------+------+-----+---------+-------+4 rows in set
로그인 후 복사

我们增加了birthday字段,并且类型为date类型。

现在我们需要删除birthday字段:

mysql> alter table student drop column birthday;Query OK, 0 rows affectedRecords: 0  Duplicates: 0  Warnings: 0
로그인 후 복사

查看表结构:

mysql> desc student;+-------+-------------+------+-----+---------+-------+| Field | Type        | Null | Key | Default | Extra |+-------+-------------+------+-----+---------+-------+| id    | int(11)     | NO   | PRI | NULL    |       || name  | varchar(20) | NO   | UNI | NULL    |       || age   | int(11)     | YES  |     | NULL    |       |+-------+-------------+------+-----+---------+-------+3 rows in set
로그인 후 복사
로그인 후 복사

说明删除成功!

现在向student表中插入数据:

mysql> insert into student values(1,'hongten',20);Query OK, 1 row affected
로그인 후 복사
mysql> insert into student(id,name,age) values(2,'hanyuan',30);Query OK, 1 row affected
로그인 후 복사

这两中方式,都是向student表中插入数据,第一种方式没有写出字段名称,而后面的值是所有字段的值。

而第二种方式是把字段都写了出来,后面跟的是字段对于的值。

现在查询student表:

mysql> select * from student;+----+---------+-----+| id | name    | age |+----+---------+-----+|  1 | hongten |  20 ||  2 | hanyuan |  30 |+----+---------+-----+2 rows in set
로그인 후 복사

可以看出我们刚才插入的两组数据已经保存到数据库中了,现在对一个字段查询:

mysql> select name from student;+---------+| name    |+---------+| hanyuan || hongten |+---------+2 rows in set
로그인 후 복사

上面只是针对name字段的查询;

现在进行条件查询:

mysql> select name,age from student where id = 2;+---------+-----+| name    | age |+---------+-----+| hanyuan |  30 |+---------+-----+1 row in set
로그인 후 복사

针对student表中的name,age查询,条件是id=2的记录;

现在查询student表中的记录总数:

mysql> select count(*) from student;+----------+| count(*) |+----------+|        2 |+----------+1 row in set
로그인 후 복사

查询不同name的student:

mysql> select distinct(name) from student;+---------+| name    |+---------+| hanyuan || hongten |+---------+2 rows in set
로그인 후 복사

修改id=2的name字段:

mysql> update student set name = 'Tom' where id =2;Query OK, 1 row affectedRows matched: 1  Changed: 1  Warnings: 0
로그인 후 복사

查询student表:

mysql> select * from student;+----+---------+-----+| id | name    | age |+----+---------+-----+|  1 | hongten |  20 ||  2 | Tom     |  30 |+----+---------+-----+2 rows in set
로그인 후 복사

现在删除id=2 的记录:

mysql> delete from student where id = 2;Query OK, 1 row affectedmysql> select * from student;+----+---------+-----+| id | name    | age |+----+---------+-----+|  1 | hongten |  20 |+----+---------+-----+1 row in set
로그인 후 복사

.....................今天就先到这里吧!!!

bitsCN.com
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!