在SQL Server中,数据库管理是核心任务之一,包括创建、删除和备份数据库。创建数据库的命令是`CREATE DATABASE`,但在此之前,我们通常会通过`IF EXISTS`来检查数据库是否已经存在,如果存在则使用`DROP DATABASE`进行删除。例如:
```sql
IF EXISTS (SELECT * FROM sysdatabases WHERE name='databaseName')
BEGIN
DROP DATABASE databaseName
END
GO
CREATE DATABASE databasename
```
删除数据库非常直接,只需执行`DROP DATABASE dbname`。
备份数据库是一个重要的维护步骤,可以通过`sp_addumpdevice`创建备份设备,然后使用`BACKUP DATABASE`命令进行备份。下面是一个示例:
```sql
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\'
BACKUP DATABASE pubs TO testBack
```
在表管理方面,`CREATE TABLE`用于创建新的表结构,可以定义列的数据类型、约束等。例如:
```sql
CREATE TABLE tabname (
col1 type1 NOT NULL PRIMARY KEY,
col2 type2 NOT NULL
)
```
复制表有两种方法:A. 使用`SELECT INTO`从一个数据库中的表复制到另一个数据库;B. 使用`CREATE TABLE AS SELECT`创建新表并仅获取列定义。
```sql
-- 方法A
USE 原数据库名
SELECT * INTO 新数据库名.dbo.新表名 FROM 原表名
-- 方法B
CREATE TABLE tab_new AS SELECT col1, col2 FROM tab_old
```
序列在SQL Server 2012及以上版本中可用,使用`CREATE SEQUENCE`创建,如:
```sql
CREATE SEQUENCE SIMON_SEQUENCE
MINVALUE 1
MAXVALUE 999
START WITH 1
INCREMENT BY 1
CACHE 20;
```
表的修改包括添加、删除列以及主键操作。例如:
```sql
ALTER TABLE tabname ADD colname coltype
ALTER TABLE tabname DROP COLUMN colname
ALTER TABLE tabname ADD PRIMARY KEY (col)
ALTER TABLE tabname DROP PRIMARY KEY (col)
```
索引的创建和删除分别用`CREATE INDEX`和`DROP INDEX`:
```sql
CREATE [UNIQUE] INDEX idxname ON tabname (col...)
DROP INDEX idxname ON tabname
```
视图是数据库中的虚拟表,创建和删除视图的命令如下:
```sql
CREATE VIEW viewname AS SELECT statement
DROP VIEW viewname
```
SQL语句的基本操作包括:
1. **数据筛选**:`SELECT`语句用于从数据表中检索数据,如`SELECT * FROM 数据表 WHERE 字段名 = 字段值 ORDER BY 字段名 [DESC]`。
2. **更新数据**:`UPDATE`语句用于修改现有数据,如`UPDATE 数据表 SET 字段名 = 字段值 WHERE 条件表达式`。
3. **删除数据**:`DELETE`语句用于删除满足条件的记录或全部记录,如`DELETE FROM 数据表 WHERE 条件表达式`。
4. **添加数据**:`INSERT INTO`用于插入新记录,如`INSERT INTO 数据表 (字段1, 字段2, ...) VALUES (值1, 值2, ...)`。
5. **数据统计**:`AVG`, `COUNT`, `MAX`, `MIN`, `SUM`等统计函数用于计算特定列的平均值、计数、最大值、最小值和总和。
这些基本操作是SQL Server中进行数据管理和分析的基础。正确理解和使用这些语句对于任何数据库管理员或开发人员来说都至关重要。