SQL Server 中的标识符

11、SQL Server 基础:T-SQL 语法、标识符与数据类型详解 本文详细介绍了 SQL Server 中 T-SQL 的基础语法、标识符规则和数据类型。涵盖了数据库兼容性级别、语法图的阅读方法、有效标识符的定义、对象引用方式、保留字的处理,以及多种数据类型(如整数、文本、十进制、货币、浮点、日期、二进制等)的特点和使用建议。同时探讨了数据类型的隐式与显式转换方式,帮助开发者合理选择和使用数据类型,提升数据库性能与准确性。 阅读详情
标识符
    SQL Server 2005 联机丛书

数 据库对象的名称即为其标识符。Microsoft SQL Server 2005 中的所有内容都可以有标识符。服务器、数据库和数据库对象(例如表、视图、列、索引、触发器、过程、约束及规则等)都可以有标识符。大多数对象要求有标识 符,但对有些对象(例如约束),标识符是可选的。

对象标识符是在定义对象时创建的。标识符随后用于引用该对象。例如,下列语句创建一个标识符为 TableX 的表,该表中有两列的标识符分别是 KeyCol 和 Description:

CREATE TABLE TableX
(KeyCol INT PRIMARY KEY, Description nvarchar(80))

此表还有一个未命名的约束。PRIMARY KEY 约束没有标识符。

标 识符的排序规则取决于定义标识符时所在的级别。为实例级对象(如登录名和数据库名)的标识符指定的是实例的默认排序规则。为数据库对象(例如表、视图和列 名)的标识符指定的是数据库的默认排序规则。例如,对于名称差别仅在于大小写的两个表,可以在使用区分大小写排序规则的数据库中创建,而不能在使用不区分 大小写排序规则的数据库中创建。

标识符的种类

标识符有两类。

常规标识符

符合标识符的格式规则。在 Transact-SQL 语句中使用常规标识符时不用将其分隔开。

SELECT *
FROM TableX
WHERE KeyCol = 124

分隔标识符

包含在双引号 (") 或者方括号 ([ ]) 内。符合标识符格式规则的标识符可以分隔,也可以不分隔。

SELECT *
FROM [TableX] --Delimiter is optional.
WHERE [KeyCol] = 124 --Delimiter is optional.

在 Transact-SQL 语句中,必须对不符合所有标识符规则的标识符进行分隔。

SELECT *
FROM [My Table] --Identifier contains a space and uses a reserved keyword.
WHERE [order] = 10 --Identifier is a reserved keyword.

常规标识符和分隔标识符包含的字符数必须在 1 到 128 之间。对于本地临时表,标识符最多可以有 116 个字符。

常规标识符规则

常规标识符格式规则取决于数据库兼容级别。可以使用 sp_dbcmptlevel 设置该级别。当兼容级别为 90 时,下列规则适用:

  1. 第一个字符必须是下列字符之一:
    • Unicode 标准 3.2 所定义的字母。Unicode 中定义的字母包括拉丁字符 a-z 和 A-Z,以及来自其他语言的字母字符。
    • 下划线 (_)、“at”符号 (@) 或者数字符号 (#)。
      在 SQL Server 中,某些位于标识符开头位置的符号具有特殊意义。以“at”符号开头的标识符表示局部变量或参数。以一个数字符号开头的标识符表示临时表或过程。以两个数字符号 (##) 开头的标识符表示全局临时对象。
      某些 Transact-SQL 函数的名称以两个 at 符号 (@@) 开头。为了避免与这些函数混淆,不应使用以 @@ 开头的名称。
  2. 后续字符可以包括:
    • 如 Unicode 标准 3.2 中所定义的字母。
    • 基本拉丁字符或其他国家/地区字符中的十进制数字。
    • “at”符号、美元符号 ($)、数字符号或下划线。
  3. 标识符不能是 Transact-SQL 保留字。SQL Server 保留其保留字的大写和小写形式。
  4. 不允许嵌入空格或其他特殊字符。

在 Transact-SQL 语句中使用标识符时,必须用双引号或括号分隔不符合规则的标识符。

注意:
变量名称和存储过程参数名称必须符合常规标识符的规则。
 
解决ArcGIS-OpenStreetMap Toolbox-Load OSM File错误 在安装成功OpenStreetMap Toolbox后,首次运行Load OSM File工具,出现以下错误 阅读详情

相关推荐

微信小程序一键登录和临时code用JWT进行微信用户授权

2、跨域进行调用接口时候,唯一标识UnionID和会话密钥 session_key如果还是用的我自己的,会出现无法调用微信服务器接口,就需要将唯一标识和会话密钥换成前端的,才可以,我自己认为这样很不合理,暂时还没有找到原因。2、能够获取到openId,但是也只能获取到openid,无法获取用户的相关信息,经过查阅官网发现,现在微信那边已经将用户信息加密,需要调用提供的接口进行解密然后获取用户数据,问题原因已经找到解决方法,还未即使更改。1、我这是一台电脑实现的前端调用后端接口,不用考虑跨域的问题。

qq_67653492的博客 5712

sql server 标识符

数据库名是一个标识符,表名也是一个标识符,在SQL SERVER中标识符分为两类: 标识符有两类: 常规标识符 符合标识符的格式规则。在 Transact-SQL 语句中使用常规标识符时不用将其分隔。 SELECT *FROM TableXWHERE KeyCol = 124 分隔标识符 包含在双引号 (") 或者方括号 ([ ]) 内。符合标识符格式规则的标识符

刘津宇教编程 1万+

RV1106的ISP配置实战:MIPI与LVDS接口的硬件连接与设备树优化

本文详细解析了RV1106芯片的ISP配置实战,重点对比了MIPI CSI-2与LVDS两种主流接口的硬件连接方案与数据流差异。通过手把手的设备树代码示例,深入讲解了单路MIPI与双路LVDS摄像头的配置要点、关键属性设置及常见避坑指南,并提供了从驱动加载检查到Media Controller工具使用的系统化调试方法,帮助开发者快速打通图像采集与处理全链路。

terraform7cloud的博客 471

sql创建表的时候设置主键、标识、字段字段额外属性(如说明)以及默认值

USE [DBName] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[TabStudent]( [id] [bigint] IDENTITY(1,1) NOT NULL, [ugid] [int] NOT NULL, [sex] [int] NOT NULL, [

因为刚好遇见你. 7377

在Rviz仿真环境中搭建传送带

<geometry><material>

qq_58268456的博客 936

2、瑞丽-伯纳德对流的拉格朗日拟序结构(FTLE场结果对比)

在中,我简单比较了瑞丽伯纳德对流的FTLE场,但是因为粒子追踪采用的是欧拉方法,所以精度不是很高, 因此与文献中的结果还是有些差别。下面放一张文献中的FTLE场,参数与上篇文章是一致的,Ra = 1e8;Pr = 1;本文将详细的介绍如何得到这样的图片,好吧,其实也不是很详细。总之,先展示以下我个人的结果。可以看出,上图基本上与文献是一致的,因为这里展示的是瞬时场,所以当然不可能是完全一致,至于提取的LCS结构,我在下面也会提及。本着详细介绍的原则,所以这里我很良心的从流场计算开始介绍。

ambu1230的博客 1785

SQL Server 数据库之命名规则

命名规则1. 概述2. 标识符2.1 标识符分类 1. 概述 用户在创建或引用数据库实体时,要遵守 SQL Server 命名规则,否则会发生一些错误; 2. 标识符 SQL Server 数据库的所有对象,包括服务器、数据库即数据库对象;如表、视图、列、索引、触发器、存储过程、规则、默认值和约束等都能有一个标识符,标识符对绝大多数对象来说是必不可少的,但对某些对象(如约束),是否规定标识符是可选的; 对象的标识符一般在创建对象时定义,作为引用工具使用; 例子 1:创建数据表 K 上述例子中,表格的名字是

程序员小白的博客 9210

POST 接口,将参数拼接到 URL 上,而不是将其作为表单数据发送

POST 接口,将参数拼接到 URL 上,而不是将其作为表单数据发送

pig_ning的博客 3144

PL/SQL 标识符(Identifier)

-- Start 标识符指的是常量名,变量名,游标名,函数名等。 --/ DECLARE -- 标识符以字母开始,可以包含字母,数字,$,#和_ I0_#$ NUMBER := 1; -- 标识符不区分大小写 NAME VARCHAR2(15) := 'ShangBo'; -- 标识符不能超过30个字符 S0123456789012345678901234567E NUMBER :

千里之行始于足下 3564

C语言版数字锁相放大器实现指南:从复数运算到嵌入式MCU移植的坑我都帮你踩了

本文详细介绍了C语言实现数字锁相放大器的关键技术,包括复数运算优化、嵌入式MCU移植的实战经验及内存管理策略。针对STM32等资源受限平台,提供了从浮点到定点数转换的优化方案,帮助工程师高效处理微弱信号提取问题。

weixin_30721077的博客 432

【LDPC-7】LLR量化位宽对LDPC译码性能的影响分析——以最小和译码算法为例进行matlab仿真

最小和译码算法的步骤如下:最后译码结果如果满足或者完成所有迭代次数,则译码算法停止迭代,否则继续进行译码迭代操作。

FPGA/MATLAB学习教程/源码/项目合作开发 1471

SQL server合法标识符

~~ SQL server合法标识符 ~~ 数据库名是一个标识符,表名也是一个标识符,在SQL SERVER中标识符分为两类: 标识符有两类: 1.常规标识符 符合标识符的格式规则。在 Transact-SQL 语句中使用常规标识符时不用将其分隔。 SELECT *FROM TableXWHERE KeyCol = 124 2.分隔标识符 包含在双引号 (") 或者方括号 ([ ]) 内。符合标识...

随心所欲的便笺 5301

5、自适应 RBF 神经网络控制方法解析

本文详细解析了基于RBF神经网络的多种自适应控制方法,包括针对函数未知、参数未知以及存在外部干扰的非线性系统的控制策略。通过李雅普诺夫稳定性理论设计自适应律,确保闭环系统稳定,并结合仿真示例和MATLAB代码实现,展示了方法的有效性。文章还对比了不同控制方法的适用场景,并给出了实际应用流程,为复杂系统控制提供了系统性解决方案。

ol789012的博客 72

mysql 的标识符_数据库标识符 - SQL Server | Microsoft Docs

数据库标识符Database Identifiers03/16/2017本文内容适用于:Applies to: SQL ServerSQL Server(所有支持的版本)SQL ServerSQL Server (all supported versions) Azure SQL 数据库Azure SQL DatabaseAzure SQL 数据库Azure SQL Database Azure ...

weixin_42201721的博客 862

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

下面哪个不是mysql的合法标识符_下面哪个不是SQL Server 的合法标识符的是

【简答题】P:79: 2。【简答题】亚文化介绍;不同年龄、性别、国度,分析喝酒文化! 选做一项!PPT形式提交!【其它】滤镜综合应用 请以附件中的文档步骤做出作品 PS滤镜效果案例.ppt 效果【简答题】To write a paragraph. (500words or so) select the theme by yourself. Eg. on “refusing”.【单选题】数据库设计时...

weixin_31891047的博客 1458

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

SQL Server登录名,用户和安全标识符(SID)

抽象 (Abstract) Logins and Users are basic security concepts in SQL Server. They are often, and incorrectly, considered to be pretty much one in the same so it is sometimes confusing to some SQL Se...

culuo4781的博客 3478

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

SQL Server中NEWID()函数用于生成一个唯一的标识符

SQL Server中NEWID()函数用于生成一个唯一的标识符GUID即全局唯一标识符

zxrhhm的博客 2845

SQL 中的中括号 [ ]、双引号 “ “、反引号 ` `:SQL Server、Oracle、MySQL三大数据库标识符 定界符 详解

SQL Server、Oracle 与 MySQL 标识符差异揭秘:你不可忽视的语法细节

「YYL DBA手记」 数据库 · 架构 · 运维 · 实战 yyldba.blog.youkuaiyun.com 1876

SQLServer中QUOTENAME函数返回带有分隔符的 Unicode 字符串,分隔符的加入可使输入的字符串成为有效的 SQL Server 分隔标识符。

QUOTENAME函数返回带有分隔符的 Unicode 字符串,分隔符的加入可使输入的字符串成为有效的 SQL Server 分隔标识符

zxrhhm的博客 719

SQL SERVER标识符的级别

SQL SERVER标识符有其所在的级别:实例的默认排序规则 影响 实例级对象(如登录名和数据库名)的标识符的排序;数据库的默认排序规则 影响 数据库对象(例如表、视图和列名)的标识符的排序。原来登录名和数据库名也可能有大小写...

194

sql server 无法绑定由多个部分组成的标识符

一开始想从一个表中的某个字段值拷贝到相对应的另一个表的字段中,出现下面情况,提示“无法绑定由多个部分组成的标识符”, 所以后面改成: 问题解决! ...

jiezhang656的专栏 1万+

SQL server的goto标识符

标识符必须以:结尾,标签也可以和continue等关键字使用,例如 declare @x int select @x=1 label: print @x select @x=@+1 while @x<6 goto label

@Cynthia博客 1007

SQL Server 学习笔记之标识符

在SQL Server中有两种方式可以创建标识符1、IDNETITY 在表中自动进行行编号 该属性只在使用它的表中保证是唯一的 使用$IDENTITY引用IDENTITY列 实例 USE [STUDENT_MANAGER]--数据库 GO CREATE TABLE idendification_test--创建表 ( ID int IDENTITY(1,2), NAME varcha

mlyjqx的博客 4871

在SQL Server中创建UUID(唯一标识符)

SQL Server生成UUID

chinalog的专栏 1215
上一篇: 网站之MySQL 索引分析和优化
下一篇: SET QUOTED_IDENTIFIER
fuweibo
博客等级 码龄23年 36粉丝 68原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值