数据库介绍与Mysql Sql使用一:库操作、表操纵

数据库简介

数据库是一个文件系统,获取通过SQL语句操作。
一个数据库的服务器中有多个数据库,一个数据库中有多个表。

数据库中数据类型:

  • 字符串型:VARCHAR、CHAR
    varchar和char区别:
    varchar(经常使用) 长度是可变的。 name varchar(8) 存入数据hello,但是如果存入helloworld报错了。
    char 长度不可变的。 name char(8) 存入的数据hello,如果不够用空格补全。
    效率高:char效果。
  • 大数据类型(一般不用):BLOB、TEXT
    BLOB:二进制文件
    TEXT:字符
  • 数值型:TINYINT 、SMALLINT、INT、BIGINT、FLOAT、DOUBLE
  • 逻辑型:BIT
  • 日期型:DATE、TIME、DATETIME、TIMESTAMP
    • date 只包含日期
    • time 只包含时分秒
    • datetime和timestamp包含日期和时分秒区别:
    • datetime需要手动录入时间。
    • timestamp不传入数据,默认选择当前系统时间。

表的约束

  • 主键约束
    标识标记该条记录。 通过pramary key声明主键。(默认唯一、非空)
    auto_increment 数据库维护主键。自动增长。
  • 唯一约束
    值是唯一的。使用unique声明
  • 非空约束
    值不能为空 not null

SQL

SQL简介

  • Structured Query Language, 结构化查询语言。
  • 非过程性的语言
    • 过程性的语言:我下一条语句,需要依赖上一条或者上几条语句。
    • 非过程性的语言:写一条语句,就会执行一个结果。

SQL分类

  • DDL:数据定义语言
    创建数据库,创建表、删除和修改数据库
    (create drop alter)
  • DML:数据操纵语言
    操作数据(insert update delete)
  • DCL:数据控制语言
    if
  • DQL:数据查询语言
    操作数据(select)

SQL-数据库的操纵(CRUD)

创建数据库

  • create database 数据名称;
  • create database 数据库名称 character set 编码 collate 校对规则;
    校对规则:和编码是成对出现的。

修改数据库

  • alter database 数据库 character set 编码 collate 校对规则;

查看数据库

  • show databases;

查询数据库的定义

  • show create database 数据库;

删除数据库

  • drop database 数据库名称;

其他操作

  • use db_name; 切换数据库
  • select database(); 查看当前使用的数据库
    例:
    创建一个名称为mydb1的数据库。
create database mydb1;

创建一个使用utf8字符集的mydb2数据库。

create database mydb2 character set 'utf8';

创建一个使用utf8字符集,并带校对规则的mydb3数据库。

create database mydb3 character set 'utf8' collate 'utf8_bin';

查看当前数据库服务器中的所有数据库

show databases;

查看前面创建的mydb2数据库的定义信息

show create database mydb2;

删除前面创建的mydb1数据库

drop database mydb1;

查看服务器中的数据库,并把其中某一个库的字符集修改为gbk

alter database mydb2 character set 'gbk';

SQL-表的操纵(CRUD)

创建表

  • create table 表名(
    字段1 类型(长度) 约束,
    字段2 类型(长度) 约束,
    字段3 类型(长度) 约束,
    字段4 类型(长度) 约束
    );
    注意:
  • 表名小括号,后面要有分号。
  • 每一行字段后面要有逗号,但是最后一行没有逗号。
  • 数据的类型后面有长度,如果是字符串类型,长度必须加。如果其他类型可以不加。默认长度。int 默认长度11

修改表

alter table 表名 add 字段 类型(长度) 约束; – 添加字段
alter table 表名 drop 字段; – 删除字段
alter table 表名 modify 字段 类型(长度) 约束; – 修改类型或者约束
alter table 表名 change 旧字段 新字段 类型(长度) 约束 – 修改字段的名称
rename table 表名 to 新表名; – 修改表名
alter table 表名 character set utf8; – 修改字符集

删除表

drop table 表名;

其他操作

desc 表名; 查看表的信息
show tables ; 查看当前库内所有表名
show create table 表名; 查看建表语句和字符集
例:
创建表:

create table employee(
    id int,
    name varchar(20),
    gender varchar(10),
    birthday date,
    entry_date date,
    job varchar(100),
    salary double,
    resume text
);

创建表加约束

create table employee2(
    id int primary key auto_increment,
    name varchar(20) unique not null,
    gender varchar(10) not null,
    birthday date not null,
    entry_date date not null,
    job varchar(100) not null,
    salary double not null,
    resume text not null
);

在上面员工表的基本上增加一个image列。

alter table employee add image varchar(20);

修改job列,使其长度为60。

alter table employee modify job varchar(60);

删除gender列。

alter table employee drop gender;

表名改为user。

rename table employee to user;

修改表的字符集为utf8

alter table user character set utf8;

列名name修改为username

alter table user change name username varchar(30);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值