mysql 数据库 day_01

来源:互联网 发布:ct数据采集系统 编辑:程序博客网 时间:2024/06/05 07:41

mysql 数据库

数据库
* Oracle 商用付费 DB2
MS Sql Server 微软系统使用
* MySql 免费数据库
sqlite 嵌入数据库 小型数据库

mysql
*开源免费
*mysql oracle 归属sun公司
*mysql 免费开源社区版 闭源的收费版
*mysql 未来有闭源的风险
*mariadb 防mysql的数据库

linux 系统安装软件
rpm 安装方式
yum 在线安装
提供一个软件的全部依赖包
yum list 支持哪些软件
yum list |grep mysql

mysql 安装

*安装 mysql 社区版 community*安装 mariadb 找网站下载*linux yum 安装 mariadb

mysql 使用

*登录mysql 服务器    mysql -h指定服务器 -p端口3306 -uroot -p密码    mysql -uroot -p*查看数据库列表    show databases;    *) database 数据库    *) schema  数据库中一组对象的集合*创建数据库    create database db1;    create database db2 charset utf8;    create database db4 charset utf8;    用记事本写往命令行粘贴    show databases; 显示表*进入数据库    use test;    use db1;*查看数据库表    show tables;*查询表中数据    select * from user;*数据库保存目录    linux:        ls /var/lib/mysql    widows:        mysql安装目录\data*查看数据库的配置文件    linux:        cat /var/lib/mysql/db1/db.opt    windows:        把文件拖拽到记事本    配置两项内容:        *)数据库使用的默认字符编码            )asc ii            )iso-8859-1               latin-1                160-255            )双字节编码            )GBK(中国编码表)            )utf8(unicode统一码)                英文单子节                中文三字节*字符的排序方式    collation  排序,校对,字符排序    show cpllation;    show collation like 'gbk%';  ‘like筛选’    show collation like 'utf8%';    show collation like 'utf8\_%'; % _ 通配符      默认选择顺序      gbk_chinese_ci      utf8_general_ci  常用的两个 ci不区分大小写*修改数据库(不能改名只能改编码)    修改编码    alter database db1 charset  gbk;    修改排序(很少用)    alter database db1 collate gbk_bin;*创建数据表    常用关键字:        column/field 列,字段        varchar 长度可变的字符串,最长16        int 数据类型    创建表顺序:--商城用户表(--mysql注释)        use db4; 进入数据库        create table user(            name varchar(16),             age int        ) engine=innodb charset=gbk;        show tables;        desc user;*表在目录中的存储    user.frm   --表结构文件    user.frm   --数据存储文件    user.myi   --索引文件    linux:        ls -al /var/lib/mysql/db1    不在数据库目录下查找    windows:        找到 data\db1 目录*存储引擎    *)innodb        支持数据库高级功能            a:事物            b:外键    *)myisam            数据存储的基本功能        效率很高*在表中插入数据    insert into user values('韩杰',25);    insert into tb_user values(1,'刘德华',55);    insert into tb_user values(2,'邓丽君',65);    insert into tb_user values(3,'毛主席',75);    insert into db4(age,name) values(25,'姓名');    查询数据    select * from user;*修改表    *)修改表名        rename table user to tb_user;        show tables; 查看修改结果    *)修改表的属性(存储引擎,字符编码)        alter table tb_user        engine=myisam charset=utf8;        show create table tb_user;查看属性    *)表中的修改字段        a:改字段名字            gender 改成 sex            alter table tb_user            change gender sex varchar(10);            desc tb_user;或 select * from tb_user;查看        b:改数据类型            alter table tb_user            modify tel varchar(20);          c:改顺序            alter table tb_user            modify tel varchar(20) after age;            alter table tb_user            modify sex varchar(20) after name;            desc tb_user;或 select * from tb_user;查看    *)添加字段        first 加载第一个        after 指定加在某个字段之后        alter table tb_user add id int first;        alter table tb_user add(                      gender char(1),                    tel char(11)                );      *)删除字段        alter table tb_user        drop sex;        desc tb_user;查看*)删除表(不可恢复)    drop table tb_user;*) 删除库(不可恢复)    drop database db1;

数据库分类

*关系行数据库    *)用“表”保存数据        相关数据存入一张表*非关系型数据库    *)对象数据库    *)键值数据库

练习:京淘电商数据库商品表

1,创建 jtds 数据库,使用 utf8 编码    create database jtbs charset utf8;    use jtds;2,创建tb_item表    create table tb_item(        id      bigint(20) primary key auto_increment comment '主键',        cid         bigint(20) not null comment '分类id',        brand       varchar(50) comment '品牌',           model       varchar(50) comment '型号',        title       varchar(100) comment '商品名',         sell_point  varchar(500) comment '卖点文本',        price       bigint comment '价格*100',        num     int(10) comment '库存量',        barcode varchar(30) comment '条码',        image       varchar(500) comment '图片路径',        status  tinyint(4) comment '状态1正常2下架3',        cteated datetime comment '修改时间',        updated datetime comment '创建时间',        foreign key(cid) references tb_item_cat(id)         )engine=innodb charset=utf8;    --修改时间        desc tb_item;查看3,在 tb_item 表中插入商品数据    insert into tb_item(id,brand,title,price,cteated)    values(7,'苹果','iPhone x',999999,now());    select * from tb_item;查看4,修改 id 是7的商品,降价12%,修改库存量为20    update tb_item     set price=round(price*0.88),num=20    where id=7;5,删除商品7    delete from tb_item where id=7;