mysql语句操作

安装数据库之后,启动数据库

win+r 输入cmd 在dos窗口输入mysql -u root -p 回车输入密码

不建议-p后面直接输入密码 这样不安全

如果输入mysqld显示不是内部命令,那么我们需要配置一下环境变量,

当然上面是我故意输入错误的

配置环境变量如下:

右键我的电脑或者计算机 选择属性(也可以使用win+r 输入control 选择系统)

一次点击设置

找到mysql安装路径设置bin前一级,最好粘贴复制,书写容易出错 ok 

点击bin你会发现bin目录里面会有一个mysql.exe文件是的,你也可以使用cd命令不断切换目录

也可以达到实现效果,不过久了你会烦的,相信

重写打开dos窗口 win+r 输入cmd 接着输入mysql -u root -p 回车输入密码 

当然默认mysql安装已经给你配置好了,这里只是告诉你cmd输入mysql -u root -p怎么可以实现

进入数据库后,页面如上

操作数据库的语句:

查看数据库中有哪些数据库

查看数据库:show databases;

注意不能少了分号(英文状态下)

创建数据库:create database demo

删除数据库:drop database demo

修改数据库:alert database demo character set utf8 college utf8_bin 

(注意只能修改字符编码,字符校对集) 创建库时候,自动创建默认码表

注意以上语句全是错误的,发现输入没有预期的效果 对了,少了结尾分号 注意

当前要使用那个数据库

use 库名; 如 use demo;

查看当前选择的数据库

select database();

显示创建的库的语法

show create database demo;

mysql中的数据类型

非黑体了解即可、记住粗体即可

一、数字型


    整型()
        TINYINT    1字节        byte
        SMALLINT   2字节        short
        MEDIUMINT  3字节        
(常用)INT        4字节        int
        BIGINT     8字节        long
    浮点型
        FLOAT   单精度4字节      float
         **DOUBLE  8字节             double  表示单价不进行计算使用
        *DECIMAL 没有精度损失     参与运算使用



二、字符串类型  


    注意: 字符串类型要使用单引号包裹.
    短字符串类型
            CHAR/VARCHAR  (最大长度255字节)        
                    char定长字符串.varchar表示变长字符串.
                    结论: 开发中varchar用的最多。 char只在表示固定长度的枚举中使用。例如 :性别(用01,02表示)
    

长字符串类型(流类型)


        *TEXT/CLOB 保存文本(字符流) --> 当要保存的内容超过255字节时使用.  java中的writer 字符
        BLOB      保存字节(字节流) --> 开发中用不到                         java中的stream 字节
        
        区别:
            text:只能存储字符数据.
            BLOB:可以存储字符和多媒体信息(图片 声音 图像)

三、日期和时间类型


        date   只记录日期    2015-01-14
        time   只记录时间    11:36:25
        year   只记录年      2015
        datatime  又记录日期 又记录 时间    2015-01-14 11:36:25
        **timestamp 同上     2015-01-14 11:36:25
        
    问题: datatime 和 timestamp 区别?
        区别在于插入的时候,如果插入datatime类型时,没有 传值,那么该类型默认值就是null;
                           如果插入timestamp类型时,没有 传值,那么该类型默认值就是当前时间;

表的操作

// 与创建表相关的语句
CREATE TABLE table_name (
    field1    datatype    约束/主键约束 auto_increment,
    field2    datatype    约束,
    field3    datatype    约束
)[character set 字符集 collate 校对规则]

// 创建表
create table t_user(
    id int,
    name varchar(20),
    sal          double(4,3),
    birthday datetime,
    hiredate timestamp
);

        
        varchar最好指定长度
        整型一般不指定.
        
    2.查看当前库中有哪些表
            show tables;
        
    3.查看表的结构
            desc 表名;     description
            desc t_user;


    4.删除表
            drop table 表名;
            drop table t_user;


    5.添加一列
            alter table 表名 add 列名 类型;
            alter table t_user add photo blob;


    6.修改列的类型
            alter table 表名 modify 列名 类型;
            alter table t_user modify photo varchar(20);
            
    7.修改列的名称
            alter table 表名 change  旧列名  新列名 数据类型;
            将 photo这一列 改名为 image
            alter table t_user change photo image varchar(20);
            
        8.删除某列
            alter table 表名 drop 列名;
            alter table t_user drop image;
            
        9.修改表的名称
            rename table 旧表名 to 新名;
            rename table t_user to user;
            
        10(用的极少)修改表的字符集. (如果创建表时不指定,默认使用数据库的字符集)
            alter table 表名 character set 字符集 collate 校对集;
            alter table t_user character set utf8 collate utf8_bin;

列的约束 (掌握)  

 
    保证数据的完整性的.
    
    1.非空约束(not null)  指定非空约束的列, 在插入记录时 必须包含值.
    2.唯一约束(unique)  该列的内容在表中. 值是唯一的.
    3.主键约束(primary key)  非空约束和唯一约束). 一个表中只能指定一个主键约束列.
                    主键约束 , 可以理解为 非空+唯一. 
                注意: 并且一张表中只能有一个主键约束.
            
    约束体现数据库的完整性.

是不是已经快疯啦呢?

图形化工具:native、sqlyoy


创建带有约束的表

create table t_user2(
    id int primary key auto_increament,      -- 员工编号
    name varchar(10) not null,               -- 员工姓名
    loginname varchar(10) not null unique,   -- 登陆名称
    password varchar(20) not null,           -- 密码
    age int(3) not null,                     -- 年龄
    birthday datetime not null,              -- 生日
    hiredate timestamp not null              -- 入职日期
);


主键自动增长 

    注意:
        1.前提某个表的主键是数字. 我们可以将该主键设置为自增. 
        2.使用主键自增可能会造成主键的断层。
        3.mysql,sqlserver,sqllite这三个数据库具有该功能.
        4.主键自增只能给主键约束的列加。
    自增就是 每次插入记录时不需要指定值. 该字段自己维护自己的值.
    维护方式就是每次加1;
    

    create table t_user(
        id  int primary key auto_increment,
        password varchar(30) not null,
        age        int not null,
        birthday datetime not null,
        hiredate timestamp not null,
        number int unique
    );

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值