Linux应用开发————mysql数据库表

mysql数据库表操作

查看表的结构

mysql> desc / describe 表名;

或者:

mysql> show create table 表名;

常见数据库引擎: innodb, myISAM...

删除表

mysql> drop table [if exists] 表名 ;

表(结构)的修改

一般语法格式: alter table 表名 操作方式 数据

1. 修改表名称

mysql> alter table 表名 rename newtb;

2. 添加字段

mysql> alter table 表名 add 字段名 字段类型; [位置];
位置: 增加到最后

first:增加到第一列

after 已有字段: 增加到指定字段之后;

3. 修改字段名称:

mysql> alter table 表名 change 旧字段名 新字段名 字段类型;

4. 修改字段类型:

mysql> alter table 表名 modify 字段名 字段类型;

5. 修改字段顺序:

mysql> alter table 表名 modify 字段名 字段类型 位置;
位置:

first:增加到第一列

after 已有字段: 增加到指定字段之后;

删除字段

mysql> alter table 表名 drop 字段名 ;

设置约束

1) 设置 primary key / unique key

mysql> alter table 表名 add primary key / unique key (字段名) ;
2) 设置 not null 和 auto_increment

mysql> alter table 表名 modify 字段名 字段类型 not null / auto_increment;
3) default 约束

mysql> alter table 表名 alter 字段名 set default '默认值';
4) 外键约束

mysql> ALTER TABLE 表名 ADD CONSTRAINT 外键名 FOREIGN KEY(字段) REFERENCES 主表名(主键列) [ON DELETE 参数]

取消约束

1) 取消 primary key / foreign key

mysql> alter table 表名 drop primary key / foreign key;
2) 取消 unique key

mysql> alter table 表名 drop index 字段名;
3) 取消 default 约束

mysql> alter table 表名 alter 字段名 drop default;
4) 取消 not null 和 auto_increment

mysql> alter table 表名 modify 字段名 字段类型;

修改表中字段的字符集

mysql> alter table 表名 convert to character set utf8;

数据的操作

1. 数据增加

SQL 语句的语法格式:

insert into 表名 [(字段1,字段2...)] values (值11,值12...)[,(值21,值22...)];

2. 数据删除

SQL 语句的语法格式:

delete from 表名 where 条件;

**特别注意:**数据删除时一定要指定条件,否则会删除所有数据;

条件如何构建:

MYSQL 提供了关系运算符和逻辑运算符: > < != = >= <= && || ! xor

3. 数据修改

SQL 语句的语法格式:

update 表名 set 字段1 = 值1,字段2 = 值2 where 条件;

4. 数据查询 (单表查询)

4.1 查看所有数据:

mysql> select * from 表名;

4.2 查看指定字段数据:

mysql> select 字段名1,字段名2... from 表名;

4.3 避免重复查询:

mysql> select distinct 字段名 from 表名;

4.4 空值查询

mysql> select 字段名 from 表名 where 字段 = NULL; error

mysql> select 字段名 from 表名 where 字段 is NULL; OK

4.5 条件查询

mysql> select 字段名,... from 表名 where 条件;

mysql> select 字段名,... from 表名 where 条件1 and 条件2;

4.6 范围查询

mysql> select 字段名,... from 表名 where 字段 between 值1 and 值2;

mysql> select 字段名,... from 表名 where 字段 not between 值1 and 值2;

相关推荐
秃头摸鱼侠38 分钟前
MySQL安装与配置
数据库·mysql·adb
t198751281 小时前
Linux 上的 Tomcat 端口占用排查
linux·tomcat·firefox
小狗爱吃黄桃罐头1 小时前
正点原子[第三期]Arm(iMX6U)Linux移植学习笔记-12.1 Linux内核启动流程简介
linux·arm开发·学习
tonexuan2 小时前
MySQL 8.0 绿色版安装和配置过程
数据库·mysql
JohnYan2 小时前
工作笔记- 记一次MySQL数据移植表空间错误排除
数据库·后端·mysql
地衣君2 小时前
Ubuntu 配置使用 zsh + 插件配置 + oh-my-zsh 美化过程
linux·运维·ubuntu
2401_858286112 小时前
OS11.【Linux】vim文本编辑器
linux·运维·服务器·编辑器·vim
我最厉害。,。2 小时前
Windows权限提升篇&数据库篇&MYSQL&MSSQL&ORACLE&自动化项目
数据库·mysql·sqlserver
朱包林2 小时前
day27-shell编程(自动化)
linux·运维·服务器·网络·shell脚本
kaede2 小时前
Linux实现线程同步的方式有哪些?
linux·运维·云计算