mysq基础语句+高级操作(学这篇就够了)

数据库基本管理和高级操作

一、常用的数据类型

int :整型
float :单精度浮点    4字节32位
double :双精度浮点    8字节64位
char :固定长度的字符类型,最多255个字符,注意不是字节
varchar :可变长度的字符类型,最多255个字符,注意不是字节
text :文本最多65535个字符
tinytext 可变长度,最多255个字符
image :图片
decimal(5,2) :定点数 5个有效长度数字,小数点后面有2位
  • 数据表结构
参数	    描述
Field	字段名称
Type	数据类型
Null	是否允许为空
Key	    主键
Default	默认值
Extra	扩展属性
  • ==注:==char如果存入数据的实际长度比指定长度要小,会补空格至指定长度,如果存入的数据的实际长度大于指定长度,低版本会被截取,高版本会报错
    主键是唯一的,但主键可以由多个字段构成

二、查看数据库结构

1.查看当前服务器中的数据库
SHOW DATABASES;                        #大小写不区分,分号“;”表示结束

2.查看数据库中包含的表
USE 数据库名;    #进入某个数据库
SHOW TABLES;    #展示表
--------or---------
show table in XXX;  

3.查看表的结构(字段)
USE 数据库名;
DESCRIBE [数据库名.]表名;
可缩写成:DESC 表名;
desc 表名/G  #不用加分号,查看结构

image-20220805095231984

image-20220805095325176

image-20220805095425168

image-20220805095853377

image-20220805100341198

三、SQL语句

SQL语句用于维护管理数据库,包括数据查询、数据更新、访问控制、对象管理等功能

SQL语言分类:

  • DDL:数据定义语言,用于创建数据库对象,如库、表、索引等
    • create,drop,alter
  • DML:数据操纵语言,用于对表中的数据进行管理(插入,删除,更新)
    • insert,delete,update
  • DQL:数据查询语言,用于从数据表中查找符合条件的数据记录
    • select
  • DCL:数据控制语言,用于设置或者更改数据库用户或角色权限
    • grant,revoke
  • TCL:事务控制语言
    • commit,rollback,savepoint

SELECT * #SELECT子句
FROM products #FROM子句
WHERE price>666 #WHERE子句

扩展表结构(增加字段)
ALTER TABLE表名 ADD address varchar(50)default'地址不详';
#default'地址不详':表示此字段设置默认值为地址不详,可与NOT NULL配合使用
ALTER TABLE yyy ADD address varchar(50)NOT NULL default'地址不详';
修改字段(列)名,添加唯一键
ALTER TABLE表名CHANGE 旧列名 新列名 数据类型 [unique key];

==unique key:==唯一键(特性:唯一,但可以为空,空值只允许出现一次)
==Primary key:==唯一且非空(主键一般选择能代表唯一性的字段不允许取空值(NULL),一个表只能有一·个主键。)

ALTER TABLE yyy CHANGE name user name varchar (10) unique key;
#CHANGE可修改字段名、数据类型、约束等所有项。
ALTER TABLE 表名 modify column 字段名 类型。
#数据库中表 字段是varchar(30),修改类型可以用(谨慎修改类型,可能会导致原有数据出错)
案列扩展用if创建表
use kgc;
create table if not exists info(
id int (4) zerofill primary key auto increment,#指定主键的第二种方式
name varchar(10) not null,
cardid int(18) not null unique key,#唯一键
hobby varchar(50));

#if not exists:表示检测要创建的表是否已存在,如果不存在就继续创建
#int(4)zerofi11:表示若数值不满4位数,则前面用"0"填充,例0001
#auto increment:表示此字段为自增长字段,即每条记录自动递增1,默认从1开始递增:
自增长字段数据不可以重复;自增长字段必须是主键;如添加的记录数据没有指定此字段的值且
添加失败也会自动递增一次
#unique key:表示此字段唯一键约束,此字段数据不可以重复:一张表中只能有一个主键,但是一张表中可以有多个唯一键
#not null:表示此字段不允许为NULL

四、创建及删除数据库和表 create/drop/desc

1.创建新的数据库
CREATE DATABASE 数据库名;

2.创建新的表
CREATE TABLE 表名 (字段1 数据类型,字段2 数据类型[,...][,PRIMARY KEY (主键名)]);
#主键一般选择能代表唯一性的字段不允许取空值(NULL),一个表只能有一个主键。

例:
CREATE DATABASE pxx;
USE pxx;
create table pxx (id int NOT NULL,goods char(10) NOT NULL,ptice decimal(5,2));
DESC pxx;

3.删除指定的数据表
DROP TABLE [数据库名.]表名;                #如不用USE进入库中,则需加上数据库名

4.删除指定的数据库
DROP DATABASE 数据库名;

image-20220805100640043

image-20220805101456309

image-20220805101834528

image-20220805101938659

image-20220805102116865

五、管理表中的数据记录 insert into/update/delete/select


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值