MySQL 常用命令(3)------表基本操作
五、表的基本操作
1、创建表
语法:create table <表名> ( <字段名1> <类型1> [,..<字段名n> <类型n>]);
例:
mysql> create table Class(
> id int(4) not null primary key auto_increment,
> name char(20) not null,
> sex int(4) not null default '0',
> degree double(16,2));

2、删除表
语法:drop table <表名>
mysql> drop table Class;
DROP TABLE用于删除一个或多个表。你必须有每个表的DROP权限。所有的表数据和表定义会被删除,属于DDL操作,所以使用本语句要小心!
注意:对于一个带分区的表,DROP TABLE会永久性地删除表定义,删除各分区,并删除储存在这些分区中的所有数据。DROP TABLE还会删除与被删除的表有关联的分区定义(.par)文件。
对于不存在的表,使用IF EXISTS用于防止错误发生。当使用IF EXISTS时,对于每个不存在的表,会生成一个NOTE。
RESTRICT和CASCADE可以使分区更容易。目前,RESTRICT和CASCADE不起作用。
3、向表中插入数据
语法:insert into <表名> [( <字段名1>[,..<字段名n > ])] values ( 值1 )[, ( 值n )]
mysql> insert into Class values(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);
注意:insert into每次只能向表中插入一条记录。
4、查询表中的数据
1.查询所有行
命令: select <字段1,字段2,...> from < 表名 > where < 表达式 >
例如:查看表 Class 中所有数据
mysql> select * from MyClass;
2.查询前几行数据
例如:查看表 Class 中前2行数据
mysql> select * from MyClass order by id limit 0,2;
select一般配合where使用,以查询更精确更复杂的数据。
5、删除表中的数据
语法:delete from 表名 where 表达式
mysql> delete from Class where id=1;
注意:delete删除数据时,要有where条件,否则会删除掉所有数据。最好先将delete换成select查看下要删除的内容。
6、修改表中的数据
语法:update 表名 set 字段=新值,… where 条件
mysql> update Class set name='Mary' where id=1;
例1:单表的MySQL UPDATE语句:
UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition] [ORDER BY ...] [LIMIT row_count]
例2:多表的UPDATE语句:
UPDATE [LOW_PRIORITY] [IGNORE] table_references SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition]
UPDATE语法可以用新值更新原有表行中的各列。SET子句指示要修改哪些列和要给予哪些值。WHERE子句指定应更新哪些行。如果没有WHERE子句,则更新所有的行。如果指定了ORDER BY子句,则按照被指定的顺序对行进行更新。LIMIT子句用于给定一个限值,限制可以被更新的行的数目。
7、增加/删除字段
语法:alter table 表名 add 字段名 类型 其他;
语法:alter table 表名 drop 字段名 ;
mysql> alter table Class add passtest int(4) default '0'
mysql> alter table Class drop passtest
修改原字段名称及类型:
mysql> ALTER TABLE Class CHANGE old_field_name new_field_name field_type;
加索引
mysql> alter table 表名 add index 索引名 (字段名1[,字段名2 …]);
例: mysql> alter table employee add index emp_name (name);
加主关键字的索引
mysql> alter table 表名 add primary key (字段名);
例子: mysql> alter table employee add primary key(id);
加唯一限制条件的索引
mysql> alter table 表名 add unique 索引名 (字段名);
例子: mysql> alter table employee add unique emp_name2(cardnumber);
删除某个索引
mysql> alter table 表名 drop index 索引名;
例子: mysql>alter table employee drop index emp_name;
8、修改表名
语法:rename table 原表名 to 新表名;
mysql> rename table Class to YClass;
当你执行 RENAME 时,你不能有任何锁定的表或活动的事务。你同样也必须有对原初表的 ALTER 和 DROP 权限,以及对新表的 CREATE 和 INSERT 权限。
如果在多表更名中,MySQL 遭遇到任何错误,它将对所有被更名的表进行回退更名,将每件事物退回到最初状态。
MySQL 常用命令(3)------表基本操作的更多相关文章
- MySQL常用命令和常见问题
MySQL常用命令和常见问题 --创建数据库并设置字符集 create database wip default character set utf8 collate utf8_general_ci; ...
- Mysql 常用命令集
1.mysqlbinlog工具使用方法如下: 先使用 show binary logs 查看 在使用导出命令 mysqlbinlog -R -uroot -pxxxx -hxxx.xxx.xxx.xx ...
- MYSQL常用命令集合(转载)
文章出处:http://www.cnblogs.com/q1ng/p/4474501.html 1.导出整个数据库mysqldump -u 用户名 -p --default-character-set ...
- MYSQL常用命令集合
1.导出整个数据库 mysqldump -u 用户名 -p --default-character-set=latin1 数据库名 > 导出的文件名(数据库默认编码是latin1) mysqld ...
- MySQL 常用命令大全
Mysql常用命令行大全 第一招.mysql服务的启动和停止 net stop mysql net start mysql 第二招.登陆mysql 语法如下: mysql -u用户名 -p用户密码 键 ...
- linux 下 mysql 常用命令
linux 下 mysql 常用命令 阅读目录 ====================== 1.开启和关闭 1.1.开启 1.2.关闭 1.3.重启 2.登录 2.1.密码明文 2.2.密码密文 ...
- Mysql常用命令 详细整理版
Mysql常用命令 show databases; 显示数据库 create database name; 创建数据库 use databasename; 选择数据库 drop database na ...
- MySql常用命令集Mysql常用命令showdatabases;显示数据库createdatab
MySql 常用命令集 Mysql常用命令 show databases; 显示数据库 create database name; 创建数据库 use databasename; 选择数据库 drop ...
- MySql常用命令集Mysql常用命令2
MYSQL 常用命令 1.导出整个数据库 mysqldump -u 用户名 -p --default-character-set=latin1 数据库名 > 导出的 文件名(数据库默认编码是la ...
- MySql常用命令集Mysql常用命令3
MYSQL常用命令 有很多朋友虽然安装好了mysql但却不知如何使用它.在这篇文章中我们就从连接 MYSQL.修改密码.增加用户等方面来学习一些MYSQL的常用命令. 有很多朋友虽然安装好了mysql ...
随机推荐
- 获取指定n个工作日后的日期工具类
import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.*;public class We ...
- 获取Java运行环境信息
设备相关信息 获取设备名称 import java.net.InetAddress; import java.net.UnknownHostException; try { InetAddress l ...
- 高校github课程资源汇总
序号 学校名称 学校类型 课程资源链接 1 清华大学 Top 计算机系课程攻略 https://github.com/Salensoft/thu-cst-cracker https://github. ...
- Win+R 常用命令
regedit 系统注册表编辑器 osk 打开键盘 msconfig 关闭系统开机启动项 gpedit.msc 本地组策略编辑器 nslookup IP地址侦测器 explorer 打开资源管理器 ...
- QT--QMainWindow窗口的状态栏设置
QMainWindow窗口状态栏 实时显示时间: 1.获取实时时间使用定时器QTimer, QTimer *timer = new QTimer(); connect(timer, &QTim ...
- Spring事务的四大特性
1.事务(Transaction) 事务一般是指数据库事务, 是基于关系型数据库(RDBMS)的企业应用的重要组成部分.在软件开发领域,事务扮演者十分重要的角色,用来确保应用程序数据的完整性和一致性. ...
- 国内centerOs6的yum源都不维护了
今天需要离线安装slurm.但是用的ubt. 需要fpm一个东西.于是想用原来的centeros联网弄出来. 直接yum 结果??? http://mirrors.163.com/centos/6/ ...
- mysql(insert + group by + on duplicate key update)
group by 的内容设为子表tmp, 外面嵌套一层查询 连接 on duplicate key update key = tmp.new_key
- AcWing 839. 模拟堆 2022/5/30
关键代码: void head_swap(int a, int b){ swap(ph[hp[a]], ph[hp[b]]); swap(hp[a], hp[b]); swap(h[a], h[b]) ...
- vue获取标签对象的方式
我知道2种方式: 1.在标签内 使用 ref 属性定义对象名,使用this.$refs.[name] 调用 2.在标签内 使用 函数传递事件对象, 定义, <div @click="h ...