sql server 创建表 COMMENT
时间: 2023-11-29 20:46:22 浏览: 146
很抱歉,SQL Server并没有像Oracle那样的COMMENT命令来为表或列添加注释。不过,你可以使用扩展属性来为表或列添加注释。具体步骤如下:
1. 为表添加注释:
```sql
EXEC sys.sp_addextendedproperty
@name = N'MS_Description',
@value = N'这里是表的注释',
@level0type = N'SCHEMA', @level0name = 'dbo',
@level1type = N'TABLE', @level1name = '表名';
```
其中,@value为注释内容,@level1name为表名。
2. 为列添加注释:
```sql
EXEC sys.sp_addextendedproperty
@name = N'MS_Description',
@value = N'这里是列的注释',
@level0type = N'SCHEMA', @level0name = 'dbo',
@level1type = N'TABLE', @level1name = '表名',
@level2type = N'COLUMN', @level2name = '列名';
```
其中,@value为注释内容,@level1name为表名,@level2name为列名。
相关问题
如何在sqlserver 建表时使用COMMENT
在 SQL Server 中,可以使用扩展属性来为表添加注释。具体步骤如下:
1. 创建表时,不需要使用 COMMENT 关键字,只需要定义表的结构即可。
2. 使用 sp_addextendedproperty 存储过程为表添加注释,语法如下:
```
EXEC sp_addextendedproperty
@name = N'MS_Description',
@value = '这里是表的注释',
@level0type = N'Schema',
@level0name = 'dbo',
@level1type = N'Table',
@level1name = 'TableName';
```
其中,@value 参数指定了注释内容,@level0name 和 @level1name 参数指定了表所在的模式和表名。
3. 使用 sp_updateextendedproperty 存储过程修改注释,语法如下:
```
EXEC sp_updateextendedproperty
@name = N'MS_Description',
@value = '这里是修改后的注释',
@level0type = N'Schema',
@level0name = 'dbo',
@level1type = N'Table',
@level1name = 'TableName';
```
4. 使用 sp_dropextendedproperty 存储过程删除注释,语法如下:
```
EXEC sp_dropextendedproperty
@name = N'MS_Description',
@level0type = N'Schema',
@level0name = 'dbo',
@level1type = N'Table',
@level1name = 'TableName';
```
注意:这里的注释是存储在扩展属性中的,不同于 MySQL 中的 COMMENT。因此,在查询表结构时,需要使用特定的元数据函数来获取注释信息,例如:
```
SELECT t.name AS TableName, p.value AS TableComment
FROM sys.tables t
LEFT JOIN sys.extended_properties p ON p.major_id = t.object_id AND p.minor_id = 0 AND p.name = 'MS_Description'
WHERE t.name = 'TableName';
```
sql server视频网站建库
在SQL Server中建立视频网站所需的数据库,可以按照以下步骤进行:
1. 创建数据库:使用SQL Server Management Studio(SSMS)或SQL脚本创建一个新的数据库。例如,可以使用以下SQL语句创建一个名为“VideoSite”的数据库:
```sql
CREATE DATABASE VideoSite;
```
2. 创建表格:在新创建的数据库中,创建以下表格:
- Videos:用于存储视频的信息,如标题、描述、URL、上传者、上传时间等。
```sql
CREATE TABLE Videos (
VideoId INT PRIMARY KEY IDENTITY(1,1),
Title VARCHAR(100) NOT NULL,
Description VARCHAR(500) NULL,
Url VARCHAR(500) NOT NULL,
UploaderId INT NOT NULL,
UploadTime DATETIME NOT NULL
);
```
- Users:用于存储用户的信息,如用户名、密码、电子邮件地址等。
```sql
CREATE TABLE Users (
UserId INT PRIMARY KEY IDENTITY(1,1),
Username VARCHAR(50) NOT NULL,
Password VARCHAR(50) NOT NULL,
Email VARCHAR(100) NOT NULL
);
```
- Comments:用于存储视频的评论,如评论内容、评论时间、评论者等。
```sql
CREATE TABLE Comments (
CommentId INT PRIMARY KEY IDENTITY(1,1),
VideoId INT NOT NULL,
UserId INT NOT NULL,
CommentText VARCHAR(500) NOT NULL,
CommentTime DATETIME NOT NULL
);
```
- Likes:用于存储视频的点赞信息,如点赞者、点赞时间等。
```sql
CREATE TABLE Likes (
LikeId INT PRIMARY KEY IDENTITY(1,1),
VideoId INT NOT NULL,
UserId INT NOT NULL,
LikeTime DATETIME NOT NULL
);
```
3. 创建索引:为提高查询效率,可以在表格中创建索引。例如,可以在Videos表格中为Title和UploaderId列创建索引:
```sql
CREATE INDEX idx_Videos_Title ON Videos (Title);
CREATE INDEX idx_Videos_UploaderId ON Videos (UploaderId);
```
4. 创建存储过程:为方便管理数据,可以创建一些存储过程。例如,可以创建一个存储过程用于添加新视频:
```sql
CREATE PROCEDURE AddVideo
@Title VARCHAR(100),
@Description VARCHAR(500),
@Url VARCHAR(500),
@UploaderId INT
AS
BEGIN
INSERT INTO Videos (Title, Description, Url, UploaderId, UploadTime)
VALUES (@Title, @Description, @Url, @UploaderId, GETDATE());
END;
```
以上是一个基本的视频网站数据库结构,你可以根据你的具体需求进行调整和扩展。