zoukankan      html  css  js  c++  java
  • 初步学习MySQL

    我们之前学习如何安装MySQL数据库 以及 navicat 管理数据库可视化工具

    那么现在主要来学习一下如何使用,(操作数据库有很多方式,终端操作、可视化工具操作、编程语句操作)

    我们首先学习在终端操作数据库(windows+r      cmd)

    登录数据库服务器:mysql -u root -p密码    或则  mysql -u root -p回车后再输入密码

    退出数据库服务器:exit

    如何查询数据库服务器中所有的数据库:show databases;     (一定要带分号 英文状态下的分号)

    如何选中一个数据库进行操作:use 数据库名称      如:use test

    ----------------------------------------------------------------

    如何在数据库服务器中创建数据库:create database 数据库名称;    (create database test1;)

    查看某个数据库中所有的表:show tables;

    如何创建一个数据表:create table user (name varchar(20),owner varchar(20),species varchar(20),sex char(1),birth date,death date);

              上面是一个例子,create table 表名称 (键 数据类型,键 数据类型(num),......);

    如何查看某个表的具体结构:describe 表名称;    (describe user);

    +---------+-------------+------+-----+---------+-------+
    | Field   | Type              | Null   | Key | Default | Extra |
    +---------+-------------+------+-----+---------+-------+
    | name    | varchar(20) | YES  |        | NULL    |         |
    | owner   | varchar(20) | YES  |        | NULL    |         |
    | species | varchar(20) | YES  |        | NULL    |         |
    | sex       | char(1)        | YES  |         | NULL    |        |
    | birth     | date             | YES  |         | NULL    |        |
    | death   | date             | YES  |         | NULL    |        |
    +---------+-------------+------+-----+---------+-------+

    field:字段名称;type:字段类型(长度);null:是否可以为空;key:约束类型,default:默认值;extra:额外的信息;

    查看表中的数据:select * from 表名称;    (select  * from user);

    如何往数据表中添加数据:insert into user values ('dog','me','taidi','f','2019-03-04',null);    按照表结构添加数据,类型,长度,都要符合(INSERT INTO  表名称 VALUES ('值','值',......);)

    mySQL中有哪些常用数据类型?

    数值:

    类型大小范围(有符号)范围(无符号)用途
    TINYINT 1 字节 (-128,127) (0,255) 小整数值
    SMALLINT 2 字节 (-32 768,32 767) (0,65 535) 大整数值
    MEDIUMINT 3 字节 (-8 388 608,8 388 607) (0,16 777 215) 大整数值
    INT或INTEGER 4 字节 (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值
    BIGINT 8 字节 (-9,223,372,036,854,775,808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值
    FLOAT 4 字节 (-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38) 0,(1.175 494 351 E-38,3.402 823 466 E+38) 单精度
    浮点数值
    DOUBLE 8 字节 (-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 双精度
    浮点数值
    DECIMAL 对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2 依赖于M和D的值 依赖于M和D的值

    日期/时间:

    类型大小
    (字节)
    范围格式用途
    DATE 3 1000-01-01/9999-12-31 YYYY-MM-DD 日期值
    TIME 3 '-838:59:59'/'838:59:59' HH:MM:SS 时间值或持续时间
    YEAR 1 1901/2155 YYYY 年份值
    DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 混合日期和时间值
    TIMESTAMP 4

    1970-01-01 00:00:00/2038

    结束时间是第 2147483647 秒,北京时间 2038-1-19 11:14:07,格林尼治时间 2038年1月19日 凌晨 03:14:07

    YYYYMMDD HHMMSS 混合日期和时间值,时间戳

    字符串(字符)类型:

    类型大小用途
    CHAR 0-255字节 定长字符串
    VARCHAR 0-65535 字节 变长字符串
    TINYBLOB 0-255字节 不超过 255 个字符的二进制字符串
    TINYTEXT 0-255字节 短文本字符串
    BLOB 0-65 535字节 二进制形式的长文本数据
    TEXT 0-65 535字节 长文本数据
    MEDIUMBLOB 0-16 777 215字节 二进制形式的中等长度文本数据
    MEDIUMTEXT 0-16 777 215字节 中等长度文本数据
    LONGBLOB 0-4 294 967 295字节 二进制形式的极大文本数据
    LONGTEXT 0-4 294 967 295字节 极大文本数据

    数据类型如何选择?

    日期  按照格式选择

    数值和字符串按照大小 选择

    连续增加好多值:

    insert into user values ('labuladuo','chenglong','dog','f','2019-04-12',null);
    insert into user values ('hashiqi','lilianjie','dog','f','2019-05-12',null);
    insert into user values ('douniuquan','zhenzidan','dog','f','2019-06-12',null);

    如何删除数据?

    delete from(表名称) where 条件;       //delete from user where name='dog';

    如何修改数据?

    update (表名称) set 键='值' where 条件;

    //update user set name='wangwangcai' where owner='zhouxingchi';

    小结一下,数据库的常见操作

    增加:insert    删除:delete  改动:update    查询:select

    MySQL建表时约束条件:主键约束、自增约束;外键约束;唯一约束;非空约束;默认约束;

    主键约束:它能够唯一确定一张表中的一条记录。也就是我们通过给某个字段添加约束,就可以使得该字段不重复且不为空。

    create table 表名称 (id int primary key,键 类型(长度),......);

    //create table user1 (id int primary key,name varchar(20));

    查看数据表编码:show create table 表名称;                         //show create table user1;

    修改表的某个字段的编码:alter table 表名称 modify 字段名类型(长度) character set 编码;  

    //alter table user1 modify name varchar(20) character set utf8;

    或者

    alter table 表名称 change 字段名称 字段名称 varchar(50) character set 编码;

    //alter table user1 change name name varchar(50) character set utf8;

    修改表的默认的编码:alter table 表名称 DEFAULT character set 编码; 

    //alter table user1 DEFAULT character set utf8;

    查看mysql的字符集:show variables where Variable_name like '%char%';

    查看某一个数据库字符集:show create database enterprises;(注:enterprises为数据库);

    开启/停止mysql:net start mysql  /  net stop mysql

  • 相关阅读:
    32位和64位系统区别及int字节数
    C++默认参数不能是一个引用
    sprintf的缓冲区溢出
    linux之cp/scp命令+scp命令详解
    linux文件属性详细说明
    linux tar打包
    sed命令
    常用linux命令
    C++ 类T T t;构造时分配的内存在静态数据区 T t=new T()分配的内存在堆 这样说对吗
    Dom事件的三种绑定方式
  • 原文地址:https://www.cnblogs.com/fqh123/p/11619754.html
Copyright © 2011-2022 走看看