MySQL数据库创建表一系列操作

1. 创建表

        在MySQL数据库中,创建新表使用CREATE TABLE语句。语法格式:

CREATE[ TEMPORARY ]TABLE[ IF NOT EXISTS] table_name

[ ([ column_definition ],…… [ index_definition ])]

[ table_option][ SELECT_statement] ;
 

【例4.1】在学生信息数据库stusys中创建student表。

在MySQL命令行客户端输入如下SQL语句:

mysql > USE stusys;Database changed
mysql > CREATE TABLE student
->
一>
sno char(6 )NOT NULLPRIMARY KEY,
->
sname char(8) NOT NULL,
->
ssex char( 2)NOT NULLEDEFAUET'男',
->
sbirthday date NOT NULL,speciality char( 12)NULL,tc tinyint NULL

2. 查看表

查看表包括查看表的名称、查看表的基本结构、查看表的详细结构等,下面分别介绍。

1.查看表的名称
可以使用SHOW TABLES语句查看表的名称。

语法格式:
SHON TABLES[ {FROM| IN} db_name ];

其中,使用选项{FROM|IN } db_name可以显示非当前数据库中的表名。

【例4.3】 查看数据库stusys中所有表名。

mysql > USE stusys;
Database changedmysql 
> SHOW TABLES;

2.查看表的基本结构

        使用SHOW COLUMNS语句或DESCRIBE/DESC语句可以查看表的基本结构,包括列名、列的数据类型、长度、是否为空、是否为主键、是否有默认值等。
(1)使用SHOW COLUMNS语句查看表的基本结构。
语法格式:

SHOW COLUMNS { FROM | IN} tb_name[ { FROM | IN }db_name ];

(2)使用 DESCRIBE/DESC语句查看表的基本结构。

语法格式:

{DESCRIBE | DESC } tb_name;

3. 修改表

        修改表用于更改原有表的结构,可以添加列、修改列、删除列、重命名列或表等。修改表使用ALTER TABLE语句。
语法格式:

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|AFTER col_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]/*修改默认字符集*/

4. 删除表

        当不需要表的时候,可将其删除。删除表时,表的结构定义、表中的所有数据以及表的索引约束

等都被删除掉。

删除表使用DROP TABLE语句。语法

格式:DROP[ TEMPORARY ] TABLE [ IF NOT EXISTS] table_name [,table_name ]...
 

【例4.11】 删除stusys 数据库中的student3表。

mysql > DROP TABLE stusys.student3 ;

执行结果;
Query OK,0 rows affected (0.14 sec)

你可能感兴趣的:(数据库,mysql)