01-数据库的基本操作

本文均为Linux系统的数据库操作


    —-mysql服务器

    sudo service mysql start   ——————- 启动mysql服务器

    mysqladmin -u root shutdown   —————-关闭mysql服务器 

    —-查看服务器是否开启

    ps -ef |grep mysql

    如果MySql已经启动,以上命令将输出mysql进程列表

数据库的操作:

    ——连接数据库

    mysql -u root -p 

    mysql -u root -p密码

    ——退出数据库

    quit / exit / cirl+D

    ——sql语句需要有分号;结尾

    –如果语句没写完,不小心按到enter键,继续输入即可   

 

    select version();——显示数据库版本 

    select now();——显示现在时间

    ——创建数据库

    create database 数据库名;            –默认charset=拉丁

    create database 数据库名  charset=utf8;   –有中文一定用此方法创建

    ——查看所有数据库

    show databases;

    ——-删除数据库

    drop database 数据库名;    

    drop database `数据库名;——如果数据库名中含有特殊符号,在数据库名前加`

    ——选择数据库

    use 数据库名;

    ——查看当前使用的数据库

    select database();


数据表的操作 

    

    show table;———显示数据库中的所有表

    ——-创建数据表

    –auto-increment 表示自动增长

    –not null   表示不能为空

    –primary key 表示主键

    –defualt     默认值

    create table 数据表名字(字段 类型  约束| 字段 类型  约束|)

    create table xxxxx(id int, name varchar(30));

    create table xxxxx(id int primary key not null, name varchar(30));

     –换行格式如下

    create table xxxxx(

      id int primary key not null,

       name varchar(30)

      );

    ——-desc 数据表的名字

    ——显示表的状态,包括列名(column name),各个列的类型(Type),各个列的值类型,主外键(Key),默认值,其他

  实例:

    —创建students表(id,name,age,hight,gender,cls_id )

    create table student(

      id int unsigned not null auto_increment primary key,

      name varchar(30),

      age tinyint unsighed default 0,

      high decimal(5,2),

      gender enum(“男”,”女”) defuault “保密”,

      cls_id int unsighed

    );

     ——插入某一个数据

    insert into students values(0,”老王”,18, 188.88, “男”,0);

    —–创建classes表(id,“班级”)

    create table classes(

      id int unsigned not null auto_increment primary key,

      name varchar(30)

      );

    

    ——–查看表创建语句

    ——show create table 表名;

  

    —-修改表—-添加字段

    —alter table 表名 add 列名 类型;

    alter table students add birthday;

    —-修改表—修改字段      (不要重命名,修改类型)

    —alter table 表名 modify 列名 类型及约束;

    alter table classes students modify  birthday data;(原为datatime)

    —-修改表—-修改字段   (重命名)

    —-alter table 表名 change 列名 类型及约束;

    —alter table students change birthday birth data;

    —-修改表—删除字段

    —-alter table 表名 drop 列名;

    alter table students drop high;

    —-删除表

    —-drop table 表名;

    drop table classes;

    ——–查看表的内容

    ——-select * from 表名;

    select * from classes;


增删改查(重点)

    —-全列插入

    —-insert into 表名 values(….)

    —-主键字段可以用0 null default 来占位

    —-向classes表中插入 一个班级

    insert into classes values(0,”菜鸟班”)

+————+————-+———+———–+————-+————-+
|    id |     name |  age |  high   |  gender |     cls_id |
+————+————-+———+———–+————-+————-+
| 1            |          老王 |       18 |   188.80 |           男 |               0 |
+————+————+———-+———–+————-+————-+

    —-向students插入一个学生

    insert into students values(0, “小李飞刀”, 20,165, “女”,123)

    —在枚举中,1对应第一个元素,2对应第二个元素,3对应第三个,以此类推。

    —-部分插入 

    insert into students (name,gender) values (“小乔”,2);

    —–多行插入

    insert into students (name,gender) values (“小乔”,2),(“大乔”,2),(“貂蝉”,2),(“吕布”,1);

    —-修改

    update 表名 set 要改的列内容 

    update students set gender=1;     —- ——–gender全部被改

    update students set gender=1 where id=1;———–只改id=1中的gender

    update students set age=22,gender=2 where id=1;—–id=1的age, gender被改

    

    —-删除

    —-物理删除

    delete from 表名;——整个表名都被删除

    delete from students where name=”小李飞刀”

    —逻辑删除

    —-用一个字段来表示,这条信息是否已经不再使用了

    —–给students表添加一个is_delete字段 bit 类型

    —–  alter table students add is_delete  bit defualt 0;

    —–is_delect=0没删, is_delect=1删了

    update students set is_delete=1 where id =6;    –删了id=6

  

    —查询基本使用

    —查询所有列

    —-select * from 表名;

    select * from students;

    —-定条件查询

    select * from students where name =”小李飞刀” ;—-查询名为小李飞刀的所有信息

    select * from students where 

    —-查询指定列

    select name,gender from students;

    —–可以使用as 为列或表指定别名

    select 字段 as 别名 ,字段 as 别名 from 表名;

    select name as 姓名,gender as 性别 from students;

    —–字段顺序查询

    select id as 序号,gender as 性别,name as 姓名 from students;

    –去重

    –distinct 字段

    select distinct gender from students;

    

    

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注