对表的操作是在某个数据库下才能进行的,所以要先选择数据库 "use 数据库名;"

1、创建数据表

1)"create table 表名 (字段1  类型  [约束],  字段2  类型  [约束]);"  创建数据表

创建学生信息表,包含字段(id,姓名,性别,生日),其中id为主键

mysql> create table stu(
-> stu_id int auto_increment primary key,
-> name varchar() not null,
-> gender bit default ,
-> birthday date);
Query OK, rows affected (0.01 sec)

2)"show tabales;"  查看当前数据库的所有表

mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| cls |
| stu |
+----------------+
rows in set (0.00 sec)

3)"show create table 表名;"  查看创建表语句

mysql> show create table stu;
+-------+-------------------------------------------+
| Table | Create Table |
+-------+-------------------------------------------+
| stu | CREATE TABLE `stu` (
`stu_id` int() NOT NULL AUTO_INCREMENT,
`name` varchar() NOT NULL,
`gender` bit() DEFAULT b'',
`birthday` date DEFAULT NULL,
PRIMARY KEY (`stu_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+-------------------------------------------+
row in set (0.00 sec)

4)"desc 表名;"  查看表的结构

mysql> desc stu;
+----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+----------------+
| stu_id | int() | NO | PRI | NULL | auto_increment |
| name | varchar() | NO | | NULL | |
| gender | bit() | YES | | b'' | |
| birthday | date | YES | | NULL | |
+----------+-------------+------+-----+---------+----------------+
rows in set (0.00 sec)

2、select 查看表中数据

1)"select * from 表名;"   查看所有字段的数据,下边gender列看到什么都没有,因为gender的类型是二进制的位,显示不了字符,在图形界面可以显示如下图。

mysql> select * from stu;
+--------+--------+--------+------------+
| stu_id | name | gender | birthday |
+--------+--------+--------+------------+
| | 张三 | | -- |
| | 李四 | | -- |
| | 王五 | | -- |
| | 赵六 | | -- |
+--------+--------+--------+------------+
rows in set (0.00 sec)

2)"select 字段1, 字段2, 字段3  from 表名;"   查看指定字段的数据。

mysql> select name, birthday from stu;
+--------+------------+
| name | birthday |
+--------+------------+
| 张三 | -- |
| 李四 | -- |
| 王五 | -- |
| 赵六 | -- |
+--------+------------+
rows in set (0.00 sec)

3、表添加数据

1)"insert into 表名 values(value1, value2, value3...);"  没有指定插入的字段,必须按照字段的顺序全部插入相应的值,自增字段一般以0占空。顺序以表的结构为准,即"desc 表名;"

mysql> insert into stu values(, '郭靖', , '1989-1-1');
Query OK, row affected (0.00 sec)
mysql> select stu_id, name, birthday from stu;
+--------+--------+------------+
| stu_id | name | birthday |
+--------+--------+------------+
| | 张三 | -- |
| | 李四 | -- |
| | 王五 | -- |
| | 赵六 | -- |
| | 郭靖 | -- |
+--------+--------+------------+
rows in set (0.00 sec)

2)"insert into 表名(列1, 列2...) values(value1, value2...);"  只插入指定的值,注意:非空字段一定要有值

mysql> insert into stu(name, gender) values('黄蓉', );
Query OK, row affected (0.00 sec) mysql> select stu_id, name, birthday from stu;
+--------+--------+------------+
| stu_id | name | birthday |
+--------+--------+------------+
| | 张三 | -- |
| | 李四 | -- |
| | 王五 | -- |
| | 赵六 | -- |
| | 郭靖 | -- |
| | 黄蓉 | NULL |
+--------+--------+------------+
rows in set (0.00 sec)

3)"insert into 表名 values(value1, value2..), (value1, value2..)...;"  一次插入多条记录,注意这是mysql特有的,其它数据库并不支持

mysql> insert into stu(name, gender) values('黄蓉', ), ('杨过', ), ('小龙女', );
Query OK, rows affected (0.00 sec)
Records: Duplicates: Warnings:

4、where子句

where子句用于筛选数据

1)从stu中查找郭靖的信息

mysql> select * from stu where name='郭靖';
+--------+--------+--------+------------+
| stu_id | name | gender | birthday |
+--------+--------+--------+------------+
| | 郭靖 | | -- |
+--------+--------+--------+------------+
row in set (0.00 sec)

2)从stu中查找所有男的

mysql> select * from stu where gender=;
+--------+--------+--------+------------+
| stu_id | name | gender | birthday |
+--------+--------+--------+------------+
| | 张三 | | -- |
| | 李四 | | -- |
| | 郭靖 | | -- |
| | 杨过 | | NULL |
+--------+--------+--------+------------+
rows in set (0.00 sec)

5、更改表数据

"update 表名 set 字段1=new-value1, 字段2=new-value2... [where 条件];"    更改表数据一般和where子句连用,不用where子句表示更改所有的字段,主键一般不进行更改

1)更改表中张三的出生日期为'2012-12-12'

mysql> update stu set birthday='2012-12-12' where name='张三';
Query OK, row affected (0.00 sec)
Rows matched: Changed: Warnings: mysql> select * from stu where name='张三';
+--------+--------+--------+------------+
| stu_id | name | gender | birthday |
+--------+--------+--------+------------+
| | 张三 | | -- |
+--------+--------+--------+------------+
row in set (0.00 sec)

6、删除数据

"delete from 表名 where 条件;"  delete语句要和where一起使用,不然表示把所有的数据都删除

1)将stu表中的'黄蓉删除'

mysql> delete from stu where name='黄蓉';
Query OK, rows affected (0.00 sec) mysql> select * from stu where name='黄蓉';
Empty set (0.00 sec)

mysql 表基本增删查改的更多相关文章

  1. MySQL 表的增删查改

    一.插入数据 1. INSERT ... VALUES ... INSERT INTO <表名> [ <列名1> [ , … <列名n>] ] VALUES (值1 ...

  2. Mysql 基本操作指令+增删查改

    nqinx是web前端服务端 负载均衡(软件)可以将用户请求调度到几台机器的nqinx上去做 ,一般都有两个负载均衡,一个做备用硬件的要比软件的好,但是一般公司都用软件实现数据库软件其实也是一个服务端 ...

  3. mysql mapper中增删查改

    //1.增 public int insert(Port port) ; //2.删 public int deleteM(String id);//3.改 public int update(Por ...

  4. mysql入门基础增删查改

    数据查询语法(DQL) DQL就是数据查询语言,数据库执行DQL语句不会对数据进行改变,而是让数据库发送结果集给客户端. 语法: SELECT selection_list /*要查询的列名称*/ F ...

  5. go语言操作mysql范例(增删查改)

    http://blog.csdn.net/jesseyoung/article/details/40398321 go语言连接mysql简介    go官方仅提供了database package,d ...

  6. 用Jmeter实现mysql数据库的增删查改

    主要是参考虫师的“使用JMeter创建数据库(Mysql)测试”. 1.打开Jmeter,点击测试计划 链接:https://pan.baidu.com/s/1ZtaZ6IC_0DRjSlXkjslY ...

  7. MySQL数据库(增删查改)

    创建一个表:create table user( uid varchar(10) , pwd int(10) ); 学生表: create table student( sno varchar(20) ...

  8. phpStudy7——MySql数据库的增删查改

    1. 添加数据: //添加数据 $strsql = "insert into user_info(userId,userName,phoneNumber,userScore,dataTime ...

  9. Django笔记&教程 5-1 基础增删查改

    Django 自学笔记兼学习教程第5章第1节--基础增删查改 点击查看教程总目录 第四章介绍了模型类models.Model和创建模型,相当于介绍了数据库表和如何创建数据库表. 这一章将介绍如何使用模 ...

随机推荐

  1. patrol_data_unit_edit.jsp

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%@ page language ...

  2. 浏览器解析html全过程详解

    前端文摘:深入解析浏览器的幕后工作原理 关于浏览器解析html全过程详解 输入URL到浏览器接收返回的数据的整个过程 TCP报文格式详解 IP报文格式详解 Linux IO模式及 select.pol ...

  3. 数据流-------C#文件和byte[]互换问题

    今天使用FileInfo.CopyTo的时候出现问题,当然并不是使用的问题,而是一些细节. 不过报错的时候,一度让我认为,copyto这个方法,给的参数必须是文件夹,而不是文件.所以就有了下面的查找 ...

  4. JS 验证URL

    var strVal = $("#urlText").val(); var Expression = "^((https|http|ftp|rtsp|mms)?://)& ...

  5. IOS设计模式第十篇之命令行设计模式

    命令行设计模式: 命令设计模式将一个请求或行动作封装为对象.这个封装请求比原始的请求要灵活并且可以在对象之前被传递,存储,动态修改或者放进队列里面.苹果 苹果公司实现这种模式使用Target-Acti ...

  6. 【docker】使用docker 安装 宝塔面板

    拉取centos基础镜像,用容器启动该基础镜像,直接在这个容器中部署 1 拉取纯净系统镜像 docker pull centos: 2 启动镜像,映射主机与容器内8888端口 docker run - ...

  7. DELPHI XE Android 开发笔记

    第一次编译时,设定android SDK: F:\RAD Studio XE6\PlatformSDKs\adt-bundle-windows-x86-20131030\sdk F:\RAD Stud ...

  8. [原]Openstack之identity server(keystone)

    本博客已经添加"打赏"功能,"打赏"位置位于右边栏红色框中,感谢您赞助的咖啡. 重新温习keystone的概念和理解 --------------------- ...

  9. 安装Windows Server 2012 R2提示"unable to create a new system partition or locate an existing system partition"解决方法

    重新安装Windows Server 2012 R2,把原来SSD分区全部格式化重建,用U盘启动安装时提示如下: "Setup was unable to create a new syst ...

  10. Android 源码下载,国内 镜像

    AOSP(Android) 镜像使用帮助 https://lug.ustc.edu.cn/wiki/mirrors/help/aosp 首先下载 repo 工具. mkdir ~/bin PATH=~ ...