sql-server

1|0数据库常用对象

  1. 表 包含数据库中所有数据的对象,行和列组成,用于组织和存储数据。
  2. 字段 表中的列 一个表可以有多个列,自己的属性: 数据类型(决定了该字段存储哪种类型的数据),大小(长度)。
  3. 视图 表 (虚拟表)一张或多张表 用户查看数据的一种方式,结构和数据是建立在对表的查询基础之上的。
  4. 索引 为了给用户提供一种快速访问数据的途径,索引是依赖于表而建立的。
  5. 存储过程 是一组为了完成特定功能的SQL语句的集合(可以查询、插入、修改、删除),编译后,存储在数据库中,以名称进行调用,当调用执行时,这些操作就会被执行。
  6. 触发器 在数据库中,属于用户定义的SQL事务命令集合,针对于表来说,当对表执行增删改操作时,命令就会自动触发而去执行。
  7. 约束 对数据表的列,进行的一种限制。可以更好的规范表中的列。
  8. 缺省值 对表中的列可以指定一个默认值。

2|0数据类型

数值型:

  • 整型类型: bigint int smallint tinyint

  • 浮点型: float 近似数值 存在精度损失 real 近似数值

    ​ decimal 精确数值 不存在精度损失 decimal(18,2)

  • 货币类型: money smallmoney

字符型:

  • char 固定长度 8000
  • varchar 可变长度字符串 8000
  • text 可变长度的字符串 最多2GB字符数据
  • unicode字符串
    • nchar 4000
    • nvarchar 4000
    • ntext 可变长度的Unicode数据 最多2GB数据

日期类型:

  • datetime 精确度高 3.33毫秒
  • datetime2 精确度更高 100纳秒
  • smalldatetime 精度1分钟
  • date 仅存储日期
create database CK on (name='CK_Data', --数据库CK的逻辑文件名,在sql server系统中使用 filename='d:/data/ck_data.MDF', --数据库CK的物理文件名,在操作系统中使用 size=10, --数据库CK的文件大小为10MB filegrowth=10%, --数据库按10%增长 maxsize=unlimited) --数据库最大增长无限制,此句无逗号。 log on (name='CK_log', --日志文件的逻辑文件名 filename='d:/data/ck_data_log.LDF', --日志文件的物理文件名 size=5, --日志文件的大小为5MB filegrowth=1, --日志文件1MB增长 maxsize=15) --数据库日志文件最大为15MB,此句无逗号。
--修改CK数据库的数据库文件"CK_data"的大小增加到300MB,日志文件"CK_log"的大小增加为100MB alter database ck modify file (name=ck_data, size=300MB) alter database CK modify file (name=ck_log, size=100MB)

3|0结构化查询语言

3|1创建数据库

1|0创建数据库

--创建数据库 CREATE DATABASE CK COLLATE Chinese_PRC_CI_AS;

1|0创建供应商表S

--创建供应商表S use CK create table S( SNO char(4) not null, SNAME varchar(20) null, SADDR varchar(30) null, primary key(SNO) )

1|0创建零件数据表P

--创建零件数据表P use CK create table P( PNO char(4) not null, PNAME varchar(20) null, COLOR varchar(10) null, WEIGHT smallint null, primary key(PNO) )

1|0创建工程项目数据表J

--创建工程项目数据表J use CK create table J( JNO char(4) not null, JNAME varchar(20) null, JCITY varchar(20) null, BALANCE money null, primary key(JNO) )

1|0创建供应关系数据表SPJ

--创建供应关系数据表SPJ use CK create table SPJ( SNO char(4) not null, PNO char(4) not null, JNO char(4) not null, PRICE money null, QTY smallint null, primary key(SNO,PNO,JNO), --实体完整性规则 foreign key(SNO) references S(SNO), --参照完整性规则 foreign key(PNO) references P(PNO), --参照完整性规则 foreign key(JNO) references J(JNO), --参照完整性规则 check (QTY between 0 and 10000) --用户定义完整性规则 )

3|2基本表结构的修改

1|0在供应表中增加一个字段

--在供应表中增加一个字段:Telephone char(10) null use CK alter table s add Telephone char(10) null

1|0删除供应表中一个字段

--删除供应表中一个字段:Telephone use CK alter table s drop column Telephone

1|0修改供应商表S,使得供应商名称长度为50

--修改供应商表S,使得供应商名称长度为50 use CK alter table s alter column Sname varchar(50) null

3|3基本表的撤销

--创建供应商表S1 use CK create table S1( SNO char(4) not null, SNAME varchar(20) null, SADDR varchar(30) null, primary key(SNO) ) --删除供应商表S1 use CK drop table S1

3|4视图的创建

--创建视图 create view JSP_NAME(JNO,JNAME,SNO,SNAME,PNO,PNAME,QTY) as select J.JNO,JNAME,S.SNO,SNAME,P.PNO,PNAME,QTY from S,P,J,SPJ where S.SNO=SPJ.SNO and P.PNO=SPJ.PNO and J.JNO=SPJ.JNO --查看试图 select * from JSP_NAME --撤销视图 drop view JSP_NAME

3|5索引的创建和撤销

--对表J创建名为JNO_INDEX索引,JNO降序排列 create index JNO_INDEX on J(JNO desc) --使用建立的索引 select * from J with (index=JNO_INDEX) --删除索引 drop index J.JNO_INDEX

__EOF__

本文作者执伞候佳人
本文链接https://www.cnblogs.com/hekang520/p/18387211.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   才下眉头3  阅读(18)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示