Mysql表的基本操作

1、sql中典型的数据类型

数据类型表示符号表示方式说明
字符型数据CHAR(n)长度为n的定长字符数据,长度不够时用空白字符补充
VARCHAR(n)长度为n的变长字符数据,长度不够时不需补充字符
数值型数据SMALLINT半字长整型数据,范围为-2^15 ~ +2^15 ,占用两个字节
INT/INTEGER全字长整型数据,范围为-2^31 ~ +2^31 ,占用4个字节
DECIMAL(p[,q])长度为p位的十进制数据,小数位数为q,无小数时q可省略不写
FLOAT双字长浮点数,字长为64位
二进制型数据BINARY[(n)]长度为n的定长二进制数据,占用n+4个字节
VARBINARY[(n)]长度为n的变长二进制数据,占用实际字符数+4个字节
IMAGE长度为n的变长二进制数据,最大长度2^31-1个字节
日期时间型数据DATETIME日期型数据,形式为YYYY-MM-DD
TIME时间型数据,形式为HH:MM:SS

2、mysql数据库操作

  • 创建数据库
    格式:
    CREATE DATABASE 数据库名称;
    CREATE DATABASE 数据库名称 CHARACTER SET 字符集;
    例如:
    创建数据库中数据编码采用的是安装数据库时制定的默认编码utf8
    CREATE DATABASE mydata;
    创建数据库并制定数据库中的编码
    CREATE DATABASE mydata CHARACTER SET utf8;

  • 查看数据库
    查看数据库mysql服务器中的所有数据库:
    SHOW DATABASES;
    查看猴哥数据库的定义的信息:
    SHOW CREATE DATABASE 数据库名称;

  • 删除数据库
    DROP CREATE DATABASE 数据库名称;

  • 其他的数据库操作命令
    切换数据库:
    USE 数据库名;

  • 查看正在使用的数据库
    SELECT DATABASE();

3、表结构相关语句

  • 创建表
    格式:
CREATE TABLE 表名(
	字段名1 类型(长度) 约束,
	字段名2 类型(长度) 约束,
    字段名3 类型(长度) 约束
);

例如:

CREATE TABLE sort(
	s_id INT,-- 分类 ID
	s_name VARCHAR(100) -- 分类名称
);
  • 主键约束
    主键是用于表示当前记录的字段,它的特点是非空且唯一。在开发中一般情况下主键是不具备任何含义,只是用于标识当前记录。
    格式:
    1、在创建表格时创建主键,在字段后面加上PRIMARY KEY
CREATE TABLE tablename(
	t_id INT PRIMARY KEY,
	......
);

2、在创建表时创建主键,在表创建的最后来指定主键

CREATE TABLE tablename(
	t_id INT,
	......,
	PRIMARY KEY(t_id )
);
  • 删除主键
    ALTER TABLE 表名 DROP PRIMARY KEY;

  • 主键自动增长
    一般主键是自增长的字段,不需要指定。
    实现添加自增长语句,主键字段后加AUTO_INCREMENT(只适用于mysql)
    例如:

CREATE TABLE tablename(
	t_id INT PRIMARY KEY AUTO_INCREMENT,
	t_name VARCHAR(100)
);
  • 查看表
    查看数据库中所有表:
SHOW TABLES;

查看表结构:

DESC 表名;
  • 删除表
    格式:
    DROP TABLE 表名;

  • 修改表结构
    用于修改表添加列
    ALTER TABLE 表名 ADD 列名 类型(长度) 约束;
    例如:
    ALTER TABLE users ADD u_name VARCHAR(20);

用于修改表修改列的类型长度及约束
ALTER TABLE 表名 MODIFY 列名 类型(长度) 约束;
例如:

 ALTER TABLE users MODIFY u_name VARCHAR(50) NOT NULL;
 
-- 给表users的分类名称字段进行修改,改为类型为VARCHAR(50) 并且添加约束NOT NULL

用于修改的表列名
ALTER TABLE 表名 CHANGE 旧列名 新列名 类型(长度) 约束;

用于修改表的删除列
ALTER TABLE 表名 DROP 列名;

用于修改表名
RENAME TABLE 表名 TO 新表名;

用于修改表的字符集
ALTER TABLE 表名 CHARACTER SET 字符集;
例如:

ALTER TABLE users CHARACTER SET gbk;
-- 把表users的编码修改成gbk
  • 插入表记录
    语法:
INSERT INTO 表 (列名1,列名2,列名3...) VALUES (值1,值2,值3...);-- 向表中插入某些列

INSERT INTO 表 VALUES (值1,值2,值3...);-- 向表中插入所有列
  • 更新表记录
    用来修改指定条件的数据,将满足条件的路局指定列修改为指定值
    语法:
    UPDATE 表名 SET 字段名=值,字段名=值;
    UPDATE 表名 SET 字段名=值,字段名=值 WHERE 条件;
    注意:
    1、修改的类型与修改的值要一致
    2、修改值的时候不能超过最大长度
    3、值如果是字符串或者日期需要加‘’
    例如:
-- 1、将指定的sname字段中的值,修改成日用品
UPDATE sort SET sname=‘日用品’;
-- 2、将sid为s002的记录中的sname改成日用品
UPDATE sort SET sname=‘日用品’ WHERE sid=‘s002’;
  • 删除记录
    语法:
DELETE FROM 表名 [WHERE 条件];
-- 或者
TRUNCATE TABLE 表名;
/*
DELETE 一条一条删除,不清空AUTO_INCREMENT(自增长)记录数;
TRUNCATE 直接将表删除,重新建表,AUTO_INCREMENT将置为零
*/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值