zoukankan      html  css  js  c++  java
  • MySQL基础篇一

    常见的数据类型

    数据类型前带n和不带n的区别:
    带n的在保存汉字的时候一个长度能保存1个汉字,不带n的2个长度才能保存一个汉字,与英文无关

    数据类型 作用
    char(num) 保存固定长度的英文或数字字符,不够的用空格补全
    date 保存日期
    datetime 保存日期和时间
    varchar(num) 保存英文字符串,长度可变, num最大到8000
    varchar(max) 保存大文本
    int 保存数字 -2^31 (-2,147,483,648) 到 2^31-1 (2,147,483,647)
    bigint 保存大数字 -2^63(-9,223,372,036,854,775,808) 到 2^63-1(9,223,372,036,854,775,807)
    smallint 保存小数字 -2^15 (-32,768) 到 2^15-1 (32,767) bit
    decimal(p, s) p代表数字的总位数,s代表小数位数
    money 能保存 -922,337,203,685,477.5808 到 922,337,203,685,477.5807
    uniqueidentifier 使用NEWID()函数来获取在当前数据库中绝对不会重复的一个字符串。例如:4F0D51DE-8414-495B-AD38-CD43EC4C2818

    SQL语言类型

    名称 解释 命令
    DDL(数据定义语言) 定义和管理数据对象(如数据库数据表等) CREATE DROP ALTER
    DML(数据操作语言) 用于操作数据库对象中所包含的数据 INSERT UPDATE DELETE
    DQL(数据查询语言) 用于查询数据库数据 SELECT
    DCL(数据控制语言) 用来管理数据库的语言,包括管理权限及数据更改 GRANT COMMIT BOLLBACK

    常用的操作数据库命令

    作用 命令
    打开数据库服务 net start mysql
    创建数据库|create database [if not exists] 数据库名称;
    查看所有数据库 |show databases;
    定位到指定数据库 | use 数据库名称;
    删除数据库  | drop database [if exists] 数据库名称;
    查看表是否存在 | USE myschool;   SHOW  tables;
    查看表定义 | DESCRIBE 表名;  或  DESC 表名;
    显示创建表的sql语句	| show create table 表名;
    避免DOS窗口乱码,可执行| SET NAMES gbk; 
    查看当前默认存储引擎|SHOW VARIABLES LIKE 'storage_engine%'; 
    修改存储引擎---修改my.ini配置文件--勿动|default-storage-engine= InnoDB
    

    设置表的存储引擎

    	CREATE TABLE 表名(
    	 #省略代码
    	)ENGINE=存储引擎;
    

    示例:

    	CREATE TABLE `myisam` (
    	   id  INT(4)
    	)ENGINE=MyISAM;
    

    创建数据表无敌语法

    CREATE TABLE [IF NOT EXISTS] 表名(
    	`列名`          数据类型       无符号数      不足以0填充        是否为空           是否主键                    默认值                       是否唯一            自动增长                      注释
        `stuTest`     varchar(20)         UNSIGNED        ZEROFILL        not null          PRIMARY KEY           DEFAULT '地址不详'                UNIQUE KEY       AUTO_INCREMENT           COMMENT '列的注释内容',
    	`sex`      char(2)            not null                                                                  DEFAULT '男'                                                              COMMENT '性别'  
    	) CHARSET = 'utf8',ENGINE=MyISAM,COMMENT '表名的注释内容' ;
    

    需要注意的是,无敌语法需要注意顺序,顺序不能乱,否者语法出错。

    示例:

    create table IF NOT EXISTS grade(
    		gradeid int not null PRIMARY key auto_increment COMMENT '年级编号',
    		gradename varchar(20) not null UNIQUE KEY COMMENT '年级名称',
    		sex VARCHAR(10) DEFAULT '男'
    	) ENGINE=myisam COMMENT='年级表' CHARSET='utf8';
    

    存储引擎的类型

    存储引擎分为MyISAM、InnoDB 、Memory、CSV等9种,最多接触的是MyISAM、InnoDB这两种

    MyISAM InnoDB
    事务处理 支持 不支持
    数据行锁定 支持 不支
    外键约束 支持 不支持
    全文索引 不支持 支持
    表空间大小 较大,约2倍 较小

    适用场合:

    • 使用MyISAM: 不需事务,空间小,以查询访问为主
    • 使用InnoDB: 多删除、更新操作,安全性高,事务处理及并发

    数据表的存储位置

    因操作系统而异,可查my.ini

    • MyISAM类型表文件
      • *.frm:表结构定义文件
      • *.MYD:数据文件
      • *.MYI:索引文件
    • InnoDB类型表文件
      • *.frm:表结构定义文件
      • ibdata1文件

    数据库基础知识的整理到此结束,下面是对数据表和数据的具体操作

  • 相关阅读:
    数据库连接池系列之——c3p0
    spring配置
    flume ng系列之——flume安装
    flume ng之组件介绍
    flume ng之TailSource
    Flume-NG + HDFS + HIVE日志收集分析
    flume+hadoop
    Flume+kafka+storm+hdfs
    IOS中坐标转换
    tabBarItem是模型,只有控件才有textColor属性
  • 原文地址:https://www.cnblogs.com/skylinelin/p/9470620.html
Copyright © 2011-2022 走看看