【MySQL笔记】数据定义语言DDL

1、创建基本表

 
    create table <表名> (<列名><数据类型>[列级完整性约束条件]
 
                                                     [,<列名><数据类型>[列级完整性约束条件]
 
                                                     .........
 
                                                     [,<表级完整性约束条件>]);
 
例:
  1. create table student(
  2. Sno char(5) not null unique,
  3. Sname char(20) unique,
  4. Ssex char(1),
  5. Sage int,
  6. Sdept char(15)
  7. );

2、修改基本表

 
             alert  table  <表名>
 
                                  [add <新列名> <数据类型> [完整性约束]]
 
                                  [drop <完整性约束名>]
 
                                  [modify <列名><数据类型>];
 
1)add: 用于向表中增加新列及新列相关的完整性约束条件,新的列增加成功后不带任何数据

        alert table student add Scome date;

2)drop:用于删除指定的完整性约束条件
    
        alert table student drop unique(Sname);
 
3)modify:用于修改原来的列定义,包括修改列名和数据类型,列数据类型修改后可能会丢失原有的数据
 
        alert table student modify Sage smallint;
         
注:SQL中没有提供删除属性列的功能,若需要删除列,必须间接通过select语句来实现,将需要的列的内容复制到另一个表中,再删除原表,然后将新表的名字命名为原表名
 

3、删除基本表

 
              drop table <表名>
 

4、建立与删除索引

 

5.1创建

            create [unique] [cluster] index <索引名> on <表名> (<列名> [<次序][,<列名>[<次序]].....);
例: 
            create unique index studentIndex on student (sno);
注:
1)unique:表明此索引的每个索引值只对应惟一的一个记录
2)cluster:表时要建立的索引是聚簇索引,即按某一列建好索引后,硬盘上的数据存储顺序也调整为按这个列的顺序存储,索引的顺序和存储顺序是一致的。

5.2删除

             drop index <索引名>;
例:
             drop index studentIndex;






原文地址:https://www.cnblogs.com/xuancaoyy/p/5814642.html