MSSQL基础

前言

最近看到一些关于sql的汇总博客,觉得还是很不错的。于是心血来潮,也想写一篇自己对这方面的一些认识(主要是点出一下自己比较少用demo写的,一般都是直接改设计时的,例如建表、该字段名)。

一、数据库建立语句

create database dbTask
on primary
(
	name='dbTask_data',
	filename='D:DBDataDATAdbTask_data.mdf',
	size =5mb,
	maxsize=200mb,
	filegrowth=15%
)
log on 
(
	name='dbTask_log',
	filename='D:DBDataLOGdbTask_log.ldf',
	size=1mb,
	filegrowth=1mb
)
go

  其中的一些注解就不标了。对于一些说on primary (指定文件组)这个可以省略,默认就是primary。个人写的时候,我一直是写上的,不然会报错误(name附近有语法错误)。也没有其他系统或电脑来测试,所以暂未确认是否必须。建议默认写上。

二、表操作

1)建表:

USE DBTask
GO
IF NOT EXISTS(SELECT 1 FROM sysobjects WHERE id=OBJECT_ID('[tbInfo]'))
BEGIN
CREATE TABLE [dbo].[tbInfo](
	[Id] [varchar](100) NOT NULL,
	[SendUserId] [varchar](100) NULL,
	[UserId] [varchar](100) NULL,
	[Title] [varchar](100) NULL,
	[Time] [datetime] NULL,
	[Description] [varchar](2000) NULL,
 )
declare @CurrentUser sysname
select @CurrentUser = user_name()
execute sp_addextendedproperty 'MS_Description', '信息表','user',@CurrentUser,'table','tbInfo'
execute sp_addextendedproperty 'MS_Description', '标题','user',@CurrentUser,'table','tbInfo','column','Title'

end
go

  sysobject为系统自带表,OBJECT_ID为系统函数。"execute sp_addextendedproperty 'MS_Description', '信息表','user',@CurrentUser,'table','tbInfo'"

是给表添加描述信息,更新表的MS_Description属性,还是比较实用的。"execute sp_addextendedproperty 'MS_Description', '标题','user',@CurrentUser,'table','tbInfo','column','Title'"则是给列添加备注信息。

2)删表语句:

USE DBTask
GO
IF NOT EXISTS(SELECT 1 FROM sysobjects WHERE id=OBJECT_ID('[tbInfo]'))
BEGIN
drop table tbInfo
end
go

3)更新表列信息:

一下为一些常见的修改集合,不做过多说明

ALTER TABLE tbInfo ADD address nvarchar(50) NULL; --添加表列
go
    
alter table tbInfo alter column address nvarchar(100); --修改表列字段类型
go

exec   sp_rename   'tbInfo.[address]','Addr','column';  --修改表列名
go

exec  sp_rename 'tbInfo', 'tbInformation', 'object';  --重命名表
go

alter table tbInformation drop column Addr; --删除表列
go 

  三、数据操作

1)数据查询是经常用到,主要有单表查询(比较简单)。多表查询---主要是嵌套查询或者是级联查询(left join、Inner join、right join)。如果使用Union查询的时候注意所有字段应该相互对应;Union和Union All 的区别(排序)。因为常用,所以略。

2)、数据库更新:update tableName set columnName=value where columnName1=value2;Insert table(col1,col2,col3) value(val1,val2,val3),注意select into from与insert into select的使用与区别。

3)、数据删除:delete ,truncate

四、其他

存储过程,函数、触发器等,比较繁琐,暂时先不写,下次在说(感觉烂尾了)

Top
收藏
关注
评论
原文地址:https://www.cnblogs.com/Joy-et/p/4804292.html