SQL忘备录(一)之数据库的创建、修改及删除

  1. SQL的基本概念

  • 基本表:基本表是独立存在的表,一个关系对应一个表,一个或多个基本表对应一个存储文件

  • 视图:视图是从若干个基本表或视图导出的表,它与基本表不同,其本身并不保存数据,数据仍存放在基本表中。在创建视图时,数据库中只能存放视图的定义;在使用视图时,才去求对应的数据,所以视图又称为“虚表”。

  • 索引:索引依赖于表的建立,它提供了数据库中编排表中数据的内部方法。一个表的存储由两部分组成:一部分存放表的数据页面;另一部分存放表的索引页面。这样,在给定某列值查询对应的数据时,就不必逐个扫描表中的每一行,可通过索引查找该值对应的地址指针,从而在数据页面中直接查找,加快了查找速度。没有建立索引的表访问数据时,必须逐个扫描。


注意:


  • 一个基本表可以存储在一个或多个存储文件中,一个存储文件可以存储一个或多个基本表,一个表可以带若干个索引,索引也存储在存储文件中。每个存储文件就是外部存储器上的一个物理文件,存储文件的逻辑结构构成了关系数据库的内模式。

  • 在用户看来,基本表和视图一样,都是关系(即表)。

2  SQL Server中数据库的创建、删除和修改

  • 创建数据库

创建数据库,就是在中、大型数据库管理系统中开辟一片存储空间,用于存放数据库中的数据对象,包括表、视图、存储过程、触发器及数据库安全性有关的控制机制等。

创建数据库命令的语法格式如下:

  
  
  
  
  1. createdatabase 数据库名

  2. [on       /*on子句指定数据库文件和文件组属性*/

  3. [primary]

  4. [<filespec>[,...n]]

  5. [,filegroup[,...n]]

  6. ]

  7. [log on {<filespec>[,...n]}]  /*log on 子句指定日志文件属性*/

  8. [forload|for attach]

  9. <filespec>::=

  10. (name='逻辑文件名',/*逻辑文件名是指数据库创建后在所有SQL语句中使用的名称*/

  11. filename='数据库文件名'

  12. [,SIZE=size]  /*数据文件的初始大小*/

  13. [,MAXSIZE={max_size|UNLIMITED}]   /*指定文件的最大容量*/

  14. [,FILEGROWTH=growth_inscreament] /*文件每次增长的增量,有百分比和空间值两种*/

  15. )

举一个例子:创建一个数据库student,数据文件的逻辑名称为student_Data,数据文件物理地存放在D盘根目录下,文件名为student_Data.mdf,数据文件的初始存储空间大小为10MB,最大存储空间为50MB,存储空间自动增长量为5MB。日志文件物理地存放在D盘的根目录下,文件名为student_Log.ldf,初始存储大小为10MB,最大存储大小为25MB,存储空间自动增长量为5MB。

  • 代码1-1 SQL命令如下:

  
  
  
  
  1. creat database student

  2. on

  3. (

  4. name=student_Data,

  5. filename='D:\student_data.mdf',

  6. size=10,

  7. maxsize=50,filegrowth=5

  8. )

  9. log on

  10. (

  11. name=stident_Log,

  12. filename='D:\student_Log.ldf',

  13. size=5,

  14. maxsize=25,

  15. filegrowth=5

  16. )

  • 修改数据库

修改数据库命令的语法格式如下:

  
  
  
  
  1. alter database 数据库名

  2. /*在文件组中增加数据文件*/

  3. { add file<filespec>[,...n][to filegroup filegroup_name]

  4. |add log file<filespec>[,...n]   /*增加日志文件*/

  5. |remove file logical_file_name   /*删除日志文件*/

  6. |add filegroup filegroup_name    /*增加文件组*/

  7. |remove filegrup filegroup_name  /*删除文件组*/

  8. |modify file<filespec>    /*更该文件属性*/

  9. |nodify name = new_dbname  /*数据库更名*/

  10. }

举一个例子:

  • 代码1-2  将代码1-1中数据库student中数据文件的大小改为不限制,增长方式改为每次增长15MB。

  •    
       
       
       
    1. alter databse student

    2. modify file

    3.      (name = 'student_data',

    4.       maxsize = unlimited)/*第一次修改:将主数据文件大小该为不限制*/

    5. alter databse student

    6. modify file

    7.      (name = 'student_Data',

    8.       filegrowth = 15MB)/*第二次修改:将增长方式改为每次增长15MB*/

注意:数据库在修改的时候一次只能修改一项,否则由于数据库的互联关系会导致数据的不安全。

  • 删除数据库

删除数据库命令的语法格式如下:

  
  
  
  
  1. dropdatabase database_name

此句的功能是删除指定的数据库,其中,database_name是指定要删除的数据库名。

你可能感兴趣的:(sql)