mysql+字段+删除数据库表_MySQL怎么管理数据库表(查看、修改、删除表
命令简介
一、 查看表
1.查看数据库teaching中已经创建的表。
2.查看表的基本结构。
3.查看表详细结构语句
1`
show create table
1`
。
4.通过安装路径查看表
二、修改表。
1.修改
文章目录 命令简介 一、 查看表 1.查看数据库teaching中已经创建的表。 2.查看表的基本结构。 3.查看表详细结构语句 1` show create table 1` 。 4.通过安装路径查看表 二、修改表。 1.修改表语法格式。 2.修改数据库表的示例 三、删除数据库表 四、临时表的管理。 命令简介 1.查看数据库中已经创建的表:show tables 2.查看表的基本结构:describe 表名 3.查看表详细结构语句:show create table 表名 4.增加表的字段、修改表名、修改字段数据类型、删除表的字段:alter table 5.删除表:drop table 表名 6.创建临时表:create temporary table 表名 7.删除临时表:drop table 表名 以上仅供参考,具体操作以本文正文为主 一、 查看表 数据表创建后,就可以用show tables命令查询已创建的表的情况。也可以查看表结构,即是指查看数据库中已存在的表的定义。查看表结构的语句包括describe语句和show create table语句。 通过这两个语句,可以查看表的字段名、字段的数据类型、完整性约束条件等。 1.查看数据库teaching中已经创建的表。 命令和运行结果如下: mysql>show tables; 运行结果: 2.查看表的基本结构。 MySQL中,describe语句可以查看表的基本定义,包括字段名、字段数据类型、是否为主键和默认值等。 (1)查看表course的基本结构。 (2)查看表sc的基本结构。 (3)查看表score的基本结构。 (4)查看表student的基本结构。 3.查看表详细结构语句show create table。 show create table语句可以查看表的详细定义,包括表的字段名、字段的数据类型、完整性约束条件等信息,除此之外,还可以查看表的存储引擎和字符编码。 如:查看表score的详细结构: mysql> show create table course; 运行后结果如图: 说明: ①“ENGINE=InnoDB”表示本表采用的存储引擎是InnoDB,它是MySQL在Windows平台默认的存储引擎。 ②“ DEFAULT CHARSET=gb2312”表示本数据库的字符集是gb2312。 4.通过安装路径查看表 当数据库表创建完毕后MySQL 删除数据库,也可以通过安装路径(如:C:\Documents and Settings\All Users\MySQL\MySQL Server 5.7\Data\teaching)查看磁盘文件数据库及其包含的数据表文件,如图所示。 二、修改表。 修改表是指修改数据库中已存在的表的定义。修改表比重新定义表简单,不需要重新加载数据,也不会影响正在进行的服务。MySQL中通过alter table语句来修改表。 修改表包括修改表名、修改字段数据类型、修改字段名、增加字段、删除字段、修改字段的排列位置、更改默认存储引擎和删除表的外键约束等。 1.修改表语法格式。 修改数据库表语法格式如下: alter [ignore] table tbl_name alter_specification [, alter_specification] ... alter_specification: add [column] column_definition [first | after col_name ] //添加字段 |alter [column]col_name{set default literal|drop default} //修改字段默认值 |change [column] old_col_name column_definition //重命名字段 [first|after col_name] |modify [column]column_definition[first|aftercol_name] //修改字段数据类型 |drop [column] col_name //删除列 |rename [TO] new_tbl_name//对表重命名 |order by col_name //按字段排序 |convert TO character set charset_name[collate collation_name] //将字符集转换为二进制 |[default] character set charset_name [collate collation_name] //修改表的默认字符集 2.修改数据库表的示例 alter table用于更改原有表的结构。例如,可以增加或删减字段、重新命名字段或表,还可以修改默认字符集。 (1)增加字段。在创建表时,表中的字段就已经定义完成。如果要增加新的字段,可以通过alter table语句进行增加。增加表的字段,可以实现如下功能: 增加无完整性约束条件的字段。 增加有完整性约束条件的字段。 表的第一个位置增加字段。 表的指定位置之后增加字段。 例如:在student表的Email列后面增加一列address。 mysql>alter table student ->add address varchar(30) not null after Email; (2)修改表名。表名可以在一个数据库中唯一的确定一张表。数据库系统通过表名来区分不同的表。MySQL中,修改表名是通过SQL语句alter table实现的。 例如:将表sc重名为se_course。 mysql> alter table sc rename to se_course; (3)修改字段的数据类型。alter table语句也可以修改字段的数据类型。 例如:修改course表的type字段,因为该字段一般是取固定值。因此,也可以把该字段的定义写成:type enum (‘必修课,’ 选修课‘) default ’必修课‘。 mysql> alter table course -> modify type enum('必修','选修') default '必修'; 运行后结果: (4)删除字段。 删除字段是指删除已经定义好的表中的某个字段。MySQL中,alter table语句也可以删除表中的字段。 如:删除student表的字段address。 mysql> alter table student drop address; 三、删除数据库表 删除表是指删除数据库中已存在的表。删除表时,会删除表中的所有数据。因此,在删除表时要特别注意。 MySQL中通过drop table语句来删除表。删除表的语法格式如下: drop table table_name 如:在mysqltest数据库中创建表example,并查看表example的基本结构,然后删除example表。 代码和运行结果如下: mysql> use mysqltest; Database changed mysql> Create table example( -> today datetime, -> name char(20) ); Query OK, 0 rows affected (0.11 sec) mysql> desc example; +-------+----------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+----------+------+-----+---------+-------+ | today | datetime | YES | | NULL | | | name | char(20) | YES | | NULL | | +-------+----------+------+-----+---------+-------+ 2 rows in set (0.02 sec) mysql> drop table example ; Query OK, 0 rows affected (0.07 sec) 删除成功后: 四、临时表的管理。 Mysql临时表适合当工作在非常大的表上时,偶尔需要运行很多查询获得一个大量数据的小的子集,不是对整个表运行这些查询,而是让MySQL每次找出所需的少数记录,将记录选择到一个临时表可能更快些,然后多这些表运行查询。 创建临时表很容易,给正常的create table语句加上temporary关键字即可。例如,创建临时表tmp_emp1。 mysql> create temporary table tmp_emp1 -> (name varchar(10) not null, -> value integer not null -> ); 临时表将在连接MySQL期间存在。断开时,MySQL将自动删除表并释放所用的空间。当然你可以在仍然连接的时候删除临时表并释放空间。删除方法与一般用户表相同。 drop table tmp_table 创建成功后: 说明: (1)创建临时表你必须有create temporary table 权限。 (2)show tables语句不会列举临时表。 (3)不能用rename来重命名一个临时表。 (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |