python-day36(初识MySQL数据库)

一. MySQL 介绍

  数据库分类:

    1. 关系型数据库(RDBMS)

        Oracle数据库

        MySQLl数据库

        MariaDB数据库

        SQL Server数据库

        Access数据库

        其他不常用关系型数据库: DB2,PostgreSQL,Informix,Sybase

    2. 非关系型数据库(Nosql)

        NOSQL>>>>> Not Olnly SQL

        键值(Key-Value)存储数据库

          memcached(key-value)

          Redis(key-value)

        列存储(Column-oriedted)数据库 很少用

          Cassandra(Column-oriedted)

        面向文档(Document-Oriented)数据库

          MongoDB(Document-Oriented)

        图形(Graph)数据库

        其他不常用非关系型数据库: HBase,MemcacheDB,BerkeleyDB,Tokyo Cabinet  \  Tokyo Tyrant   (ttserver)

二. MySQL的下载安装,简单应用及目录介绍

  >>>>>MySQL安装教程>>>>>

  将MySQL的bin目录追加到环境变量中 PATH

  mysqld --initialize-insecure  初始化

  mysqld 启动MySQL服务

  mysql -u root -p 连接MySQL服务器

  mysqld --install 制作MySQL的Windows服务

  mysqld --remove  移除

  注册成服务之后

  net start mysql  启动mysql服务

  net stop mysql  关闭mysql服务

三. root用户密码设置及忘记密码的解决方案

  方法1: 首先登陆MySQL, 使用mysql自带的那个客户端连接上mysql

  格式:mysql> set password for 用户名@localhost = password('新密码'); 
  例子:mysql> set password for root@localhost = password('123');

  方法2 和 方法3

四. 初始sql语句,语句结尾加 '  ;  '

  1.库 

    增: create databasesdb1 charset utf8 ;#创建一个库,可以指定字符集

    查: show databases; #查看数据库中所有的库

    改: alter database db1 charset latin1; #修改的字符集   Latin (改成哪个字符集)

    删除: drop database db1; #删除数据库

  2. 表

    先切换库: use db1;  #要操作表文件,要先切换到对应的库下才能操作表

    增: create table t1(id int, name char(10));

    查: show tables; #查看当前库中所有的表

       show create table t1; #查看单表的创建信息

       desc t1; 查看表结构

       describe t1; 同上

    改: alter table t1 modify name char(3);

      alter table t1 change name name1 char(2);

    删: drop table t1;

  3. 行*******

    增: insert into t1 values(1,'dsb1'),(2,'dsb2'),(3,'dsb3'); 

      #insert 后面的 into 可以不用写

    查: select * from t1; 

      select id,name from t1;

    改: update t1 set name='sb' where id = 2;

      update t1 set name= 'sb'; 不指定where,name字段的所有数据都改成sb.

    删: delete from t1 where id = 1 ; 删除id 为1 的行

    清空表:

      delete from t1; #自增id 会继续 更上删除后的

      truncate table t1; 数据量大,删除速度比上一条快, 且直接从零开始,

      auto_increment 表示: 自增

      primary key 表示: 约束(不能重复且不能为空)

猜你喜欢

转载自www.cnblogs.com/Thui/p/10088530.html