mariadb 2
2024-10-09 13:20:28
mariadb第二章-增删改
MariaDB 数据类型
MariaDB数据类型可以分为数字,日期和时间以及字符串值。
使用数据类型的原则:够用就行, 尽量使用范围小的,而不用大的
- 常用的数据类型
- 整数:int, bit
- 小数:decimal #decimal(5,2)
- 字符串:varchar, char
- 日期时间:date, time, datetime
- 枚举类型(enum)
- 约束
- 主键primary key:物理上存储的顺序
- 非空not null:此字段不能为空
- 唯一unique:此字段不允许重复
- 默认default:当不填写此值时会使用默认值,如果填写则已填写为准
- 外键foreign key:对关系字段进行约束,当为关系字段填写值时,会到关联的表中查询此值是否存在,如果存在则填写成功,如果不存在则填写失败并抛出异常
sql语句-增、删、改
--显示当前时间
select now(); --创建classes表(id, name) create table zzzz(
id int primary key not null auto_increment,
name varchar(20),
age int
); --查看表结构 --创建students表(id, name, age, high, gender, cls_id)
create table students (
id int unsigned not null auto_increment primary key,
name varchar(20),
age tinyint unsigned default 0,
high decimal(5,2),
gender enum('男', '女', '中性', '保密') default '保密',
cls_id int unsigned
); --创建classes表(id, name)
create table classes(
id int unsigned not null auto_increment primary key,
name varchar(20)
); --查看表的创建 --MyISAM与InnoDB区别
--两种类型最主要的区别就是InnDB支持事物处理与外键和行级锁 --修改表-添加字段
--alter table 表名 add 列名 类型;
alter table students add birthday datetime; -- 修改表-修改字段:不重命名版
-- alter table 表名 modify 列名 类型及约束;
alter table students modify birthday date; -- 修改表-修改字段:重命名版
-- alter table 表名 change 原名 新名 类型及约束;
alter table students change birthday birth date; -- 修改表-删除字段
-- alter table 表名 drop 列名;
alter table students drop birthday; -- 删除表
-- drop table 表名;
drop table students; --增删改查
--增加
--全列插入
--insert into 表名 values(..)
--主键字段 可以用0 null default 来站位 -- 向students表里插入 一个学生信息
insert into students values (0,'小明',19,188.999,'男', 1); --部分插入
insert into students(id, name, age) values (0,'绿帽子',19);
--部分插入(多条记录)
insert into students(id, name, age) values (0,'绿帽子',19),(0,'小跳蚤',21); --修改
--update 表名 set 列1=值1, 列2=值2... where 条件;
update students set age=100 where id=1;
update students set age=100,cls_id=77 where id=1;
--删除
-- 物理删除
-- delete from 表名 where 条件
delete from students where cls_id=88; -- 逻辑删除
-- 用一条字段来表示 这条信息是否已经不能在使用了
-- 给students表添加一个is_delete字段 bit 类型
alter table students add is_delete bit default 0;
update students set is_delete=1 where id=6;
最新文章
- DIY操作系统(引文)
- 【转】推荐UML插件AmaterasUML
- dojo使用笔记: 自定义ConfirmDialog
- [解决方案] 当 IDENTITY_INSERT 设置为 OFF 时
- 添加navbar以及上面的左右按钮代码
- 【OpenGL】画立方体
- Cordova+angularjs+ionic+vs2015开发(五)
- C#后台验证身份证号码的一个方法
- Android编译错误——undefined reference to
- php+redis实现电商秒杀功能
- SOA 下实现分布式 调用 cxf+ webService +动态调用
- h5的input的required使用中遇到的问题
- Redis持久化的两种方式(RDB和AOF)
- Android序列化
- How hacker do IT: Tricks Tools and Techniques (翻译)
- Java基础学习-类型转换之隐式转换
- PTA——近似求PI
- 前端(主要html/css)学习笔记
- 将含有makefile文件的源码加入Eclipse工程
- Codeforces 1154F Shovels Shop
热门文章
- google protocol buffer——protobuf的基本使用和模型分析
- 019-链接 使用name属性
- 《Java从入门到失业》第一章:计算机基础知识(一):二进制和十六进制
- 《Java从入门到失业》第二章:Java环境(二):JDK、JRE、JVM
- Android 用versionName判断版本大小(是否进行版本更新)
- JavaScript学习系列博客_19_JavaScript中方法(method)
- golang []byte 和 string相互转换
- 寻找猴王小游戏php代码
- Ubuntu18.04 解决umount: /mnt: device is busy
- Java多线程_阻塞队列