数据库的创建(CREATE DATABASE)

语法:CREATE DATABASE 数据库名称

案例:  CREATE DATABASE Accounting;

CONTAINMENT: 使用该功能可以在目标SQL实例上部署具有很少依赖关系的数据库。默认值是OFF

ON:定义存储数据的文件位置;定义存储日志的文件的位置。

NAME:定义文件的逻辑名称。

FILENAME:实际的操作系统文件在磁盘上的物理名称,在该文件中将存储数据和日志。.mdf 后缀名为数据库物理文件,ldf后缀名为日志文件,附属文件的扩展名为.ndf。

SIZE:数据库的大小

MAXSIZE:数据库文件存储的极限

FILEGROWTH:确定数据库达到这个最大值的速度

LOG ON:选项允许指定那些文件需要日志,以及这些文件位于什么位置。

COLLATE:该选项处理排序,字母大小写以及是否对重音敏感的问题。

FOR ATTACH:可以使用该选项将已存在的一些数据库文件附加到当前的服务器上。

WITH DB CHAINING ON|OFF :这个选项是就是针对这样的跨数据库的所有权链。(是否有效)

TRUSTWORTHY:这个选项为访问在SQLSERVER 环境以外的系统资源和文件提价额外的安全

案例:

----------------------------------------------------------------------------------------------------------------------------------------------------------------------

CREATE DATABASE Accounting
ON

NAME='Accounting',
FILENAME ='C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\AccountingData.mdf',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5
)
LOG ON
(
NAME ='AccountingLog',
FILENAME ='C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\AccountingLog.ldf',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH=5MB
);
GO

----------------------------------------------------------------------------------------------------------------------------------------------------------------------

查看数据库结构信息语句:EXEC sp_helpdb  数据库名称

数据表的创建(CREATE TABLE)

语法:CREATE TABLE 表名

数据类型

DEFAULT: 默认值。

IDENTITY: 标识值表示自动增长。

NOT FOR REPLICATION: 与复制有关。

ROWGUIDCOL :与复制有关。

COLLATE:该选项处理排序,字母大小写以及是否对重音敏感的问题。

NULL/NOT NULL:说明指定的列是否接受NULL值。

约束

计算:定义几列的值

例如:求总价=单价*数量,总价有数据库自动完成

语法:列名  AS  表达式  ExtendedPrice AS Price * Quantity 或 ListPrice AS Cost * 1.2

注意:1.不能使用子查询,而且值不能来自不同的表

2.不能直接指定列的数据类型,计算列的类型隐式设置为表达式产生的类型。

3.可以在计算列上创建索引,但是必须采用特定步骤。

表约束:与数据库的约束不同,可以基于多列。

ON:指定表希望位于那个文件组。

TEXTIMAGE_ON:与ON相同,不同的是将表的特定部分移动到不同的文件组中,在大的数据列中才有用到


创建表格案例:

--------------------------------------------------------------------------------------------------------------------------------------------

USE Accounting
CREATE TABLE Customers(
CustomerNo int IDENTITY NOT NULL,
CustomerName varchar(30)NOT NULL,
Address1 varchar(30) NOT NULL,
Address2 varchar (30) NOT NULL,
City varchar(20)NOT NULL,
State char(2)NOT NULL,
Zip varchar(10)NOT NULL,
Contact varchar(25) NOT NULL,
Phone char(15)NOT NULL,
FedIDNo varchar(9) NOT NULL,
DeteInSystem date NOT NULL
)
GO

--------------------------------------------------------------------------------------------------------------------------------------------


USE Accounting
CREATE TABLE Employees
(
 EmployeeID int  IDENTITY PRIMARY KEY NOT NULL,
 FirstName varchar(25)      NULL,
 MiddleInitial char(1) NULL,
 LastName varchar(25)       NULL,
 Title varchar(25) NULL,
 SSH varchar(11)            NULL,
 Salary money NULL,
 PriorSalary money NULL,
 LastRaise AS Salary-PriorSalary,
 HireDate date NULL,
 TerminationDate date NULL,
 ManagerEmpID int NULL,
 Department varchar(25) NULL
 
)
GO

--------------------------------------------------------------------------------------------------------------------------------------------

修改数据(ALERT,DROP)

修改数据库(ALERT DATABASE 只是删除数据库或者表的内容 )

语法:ALERT DATABASE 数据库名称

案例:ALERT DATABASE Accounting MODIFY  FILE (NAME = Accounting,SIZE=100MB)

修改表格(ALERT TABLE)

语法:ALERT TABLE 表名

案例:1.修改一行数据 ALTER TABLE Employees ADD 
--PreviousEmployes varchar(30)  NULL

2.添加多行数据  DateOfBirth date NULL,

LastRaiseDate date NOT NULL  DEFAULT '2008-01-01'

修改数据库(DROP  DATABASE\Table 完全删除数据库和表)

定义:就是删除在DROP语句中引用的任何对象。

语法:DROP DATABASE 表名



本文转载:CSDN博客