-
安装SQL Server
- 下载SQL Server 安装程序
- 运行安装程序,选择"基本"安装类型
- 在"实例配置"页面,将实例命名为"SQLServerTest"
- 在"服务器配置"页面,选择"NT服务\系统"作为启动账户
- 完成其他设置,然后安装SQL Server
-
连接SQL Server
- 启动SQL Server Management Studio
- 在"连接到服务器"对话框中,输入服务器名称"localhost\SQLServerTest"
- 选择"Windows身份验证"作为身份验证模式
- 单击"连接"按钮连接到SQL Server实例
-
创建数据库
- 在对象资源管理器中,右键单击"数据库"文件夹
- 选择"新建数据库"
- 将数据库命名为"MyDatabase"
- 保留其他默认选项,单击"确定"创建新数据库
-
创建表
- 在对象资源管理器中,展开"MyDatabase"数据库
- 右键单击"表"文件夹,选择"新建表"
- 在查询窗口中,输入以下SQL语句:
CREATE TABLE Employees (
EmployeeID INT PRIMARY KEY,
FirstName VARCHAR(50),
LastName VARCHAR(50),
Email VARCHAR(100)
)
- 执行查询创建"Employees"表
插入数据
-
- 在查询窗口中,输入以下SQL语句:
INSERT INTO Employees (EmployeeID, FirstName, LastName, Email)
VALUES (1, 'John', 'Doe', 'john.doe@example.com'),
(2, 'Jane', 'Smith', 'jane.smith@example.com'),
(3, 'Michael', 'Johnson', 'michael.johnson@example.com')
- 执行查询将三行数据插入"Employees"表
查询数据
在查询窗口中,输入以下SQL语句:
SELECT FirstName, LastName, Email
FROM Employees
WHERE EmployeeID > 1
ORDER BY LastName
- 执行查询从"Employees"表中选择姓名和电子邮件,仅包含EmployeeID大于1的行,并按姓氏排序
更新数据
在查询窗口中,输入以下SQL语句:
UPDATE Employees
SET Email = 'new.email@example.com'
WHERE EmployeeID = 3
- 执行查询将EmployeeID为3的员工的电子邮件更新为"new.email@example.com"
删除数据
在查询窗口中,输入以下SQL语句:
DELETE FROM Employees
WHERE EmployeeID = 2
- 执行查询从"Employees"表中删除EmployeeID为2的员工记录
创建视图
在查询窗口中,输入以下SQL语句:
CREATE VIEW EmployeeContacts AS
SELECT FirstName, LastName, Email
FROM Employees
- 执行查询创建一个名为"EmployeeContacts"的视图,仅包含员工的姓名和电子邮件
创建存储过程
在查询窗口中,输入以下SQL语句:
CREATE PROCEDURE GetEmployeeByID
@EmployeeID INT
AS
BEGIN
SELECT FirstName, LastName, Email
FROM Employees
WHERE EmployeeID = @EmployeeID
END
- 执行查询创建一个名为"GetEmployeeByID"的存储过程,接受一个EmployeeID参数,并返回该员工的姓名和电子邮件
备份和恢复数据库
- 在对象资源管理器中,右键单击"MyDatabase"数据库
- 选择"任务" > "备份..."
- 在"备份数据库"对话框中,选择备份类型和目标文件路径
- 单击"确定"开始备份数据库
安全性和权限管理
在查询窗口中,输入以下SQL语句:
CREATE LOGIN NewUser WITH PASSWORD = 'P@ssw0rd'
CREATE USER NewUser FOR LOGIN NewUser
GRANT SELECT ON Employees TO NewUser
- 执行这些语句创建一个新的SQL Server登录名"NewUser",将其映射到数据库用户,并授予对"Employees"表的SELECT权限
索引
- 在查询窗口中,输入以下SQL语句:
CREATE NONCLUSTERED INDEX IX_Employees_LastName
ON Employees (LastName)
- 执行此语句在"Employees"表的"LastName"列上创建一个非聚集索引,以提高按姓氏搜索的性能
事务
- 在查询窗口中,输入以下SQL语句:
BEGIN TRANSACTION
UPDATE Employees
SET Email = 'updated@example.com'
WHERE EmployeeID = 1
DELETE FROM Employees
WHERE EmployeeID = 3
COMMIT TRANSACTION
- 执行这些语句将开始一个事务,更新一个员工的电子邮件,删除另一个员工记录,然后提交事务
监视和优化
- 启动SQL Server Profiler
- 在"事件选择"窗格中,选择要捕获的事件(如SQL:BatchStarting、SQL:BatchCompleted等)
- 单击"运行"按钮开始捕获SQL Server活动
- 在查询窗口中执行一些SQL语句
- 在Profiler跟踪中查看捕获的事件和相关信息
这些示例旨在说明每个章节中介绍的概念。在实际使用SQL Server时,您可能需要根据具体情况进行调整和扩展