• Mysql基础部分,针对以后python使用


    #redis 非关系型数据库
    #mysql 关系型数据库 表与表之间有数据关系 Oracle Mysql SqlServer DB2
    #多张表组合在一起就是数据库
    #冗余 存储两倍数据 可以使系统速度更快 表的规范化程度越高,表与表之间的关系就越多
    #冗余 缺点 数据量增加一倍,且修改时两个表有重复字段
    #主键是唯一的,一个数据表中包含一个主键 唯一确定某一个是这个表的唯一的值
    #外键 用于关联两个表
    #复合键 一般用于索引 将多个列作为一个索引键,一般用于复合索引
    #索引 使用索引可以快速访问数据表中的特定信息,索引对数据库一列或多列的值进行排序的一种结构
    #这个就是索引!!hash 数据库对应 将数据转为hash 然后排个序 再二分法
    #数据库的索引是B加树 二叉树的一种
    #MD5是基于hash再封装
    #参照完整性:参照完整性是要求关系中不允许引用不存在的实体
    #与实体完整性是关系模型必须满足的完整性约束条件,目的是保证数据的一致性


    #show databases;
    #use mysql;
    #show tables; 显示表
    #desc 表名 显示表的结构 列名 数据的类型 长度
    #enum 字段 Null是否为空(NO不能为空)
    #Key PRI主键(primary key )
    #Default默认值


    #查看数据
    #select * from 表名;
    #select * from 表名G 将其写为列!

    #mysqladmin 创建密码 /etc/init.d/mysqld start 启动mysql
    #ps -ef |grep mysqld | kill -9 进程号

    #创建用户
    #use mysql;
    #select user User from user表名;
    #insert into user表名 (host) ....

    #授权
    #grant select,insert,update,delete,create,drop on 表名.* to "用户'@'localhost" identified by "密码"
    #grant all on 表名.* to '用户'@'%' identified by "密码";
    #flush privileges;

    #show grants for 用户; 显示用户权限对表名


    #/etc/my.cnf linux Mysql配置文件

    #管理Mysql的命令
    #show columns from user; == desc 表名

    #创建数据库名
    #create database 数据库名 charset utf8; 创建数据库支持中文 ;

    #show create database 数据库名; 查看其数据库属性

    #删除数据库 (切记别随便删除数据库)drop database 数据库名

    #Mysql支持多种类型 分为三类:数值,日期,字符串
    #每个大类又分为多个小类

    #创建表
    #create table 表名(列名1 类型int,列名2 类型char);
    #create tables student(stu_id INT NOTNULL AUTO_INCREMENT, name char(32) NOT NULL, primary key(stu_id))
    #desc student

    #添加数据
    #insert into 表名 (列名1,列名2..) values(值1,值2..);
    #insert into student (name,age) values("ljc", 23)

    #查询数据
    #select * from student;
    #select name from student;

    #where condition 范围
    #select * from student where id > 3

    #where 模糊查询 列表名 like "字符串"
    #select * from student where re_data like "2016-07-%"

    #and or not

    # offset n 偏移量 查看从第几行开始 配合Limit使用
    #select * from student limit 2 offset 1 去掉第一行查后两行

    #limit n 查看数据行数 查看前两条

    #修改(字段) update
    #update 表名 set 列名="字符串" where id = 4; 一般用主键
    #update student set name = 'ljc', age = 23 where id =4 ;

    #批量修改 update
    #update student set name ='ha' where id <3;

    #删除
    #delete from 表名 where 列表="字符串";
    #delete from student where name = "ljc";

    #排序
    #ASC 升序(默认升序) DESC降序 order by 列表名 DESC 或者ASC
    #select * from student order by 列表名 desc;
    #select * from student order by 列表名; 降序

    #Group by 语句
    #select 列表 from 表名
    #select name, count(*) from student group by name; 统计 然后分组 按名字分 出现多少次
    #select name ,count(*) as stu_num from student group by name; 给count(*)起个别名
    #统计
    #select name , sum(age) from student group by name with rollup; #算总数
    #select coalesce(name, "起名字") ,sum(age) from student group by name with rollup;

    #修改表 alter add drop modify 修改数据类型 change

    #alter table 表名 add 列名 属性
    #alter table student add sex char(2)

    #删除drop
    #alter table 表名 drop 列名
    #alter table student drop sex

    #修改数据类型modify
    #desc student
    #alter table student modify sex 原本属性 改后属性;
    #alter table student modify sex char(2) char(4)


    #change 修改列表名加数据类型 alter table 表名 change 原列表名 新列表名 新属性;
    ##alter table student change sex gender char(32);


  • 相关阅读:
    Linux 服务器连接远程数据库(Mysql、Pgsql)
    oracle主键自增
    全排列算法实现
    python动态导入包
    python发红包实现
    CentOS 6.8安装Oracle 11 g 解决xhost: unable to open display
    xargs的一个小坑
    利用ssh-copy-id复制公钥到多台服务器
    redhat 5 更换yum源
    【原创】Hadoop的IO模型(数据序列化,文件压缩)
  • 原文地址:https://www.cnblogs.com/Liang-jc/p/8859318.html
Copyright © 2020-2023  润新知