热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

TransactSQL复制字符串(SQLServer):补足0或者其他字符串

REPLICATE微软TechNET解释(https:technet.microsoft.comzh-cnlibraryms174383(vsql.110).aspx)REPLIC

REPLICATE 微软TechNET解释(https://technet.microsoft.com/zh-cn/library/ms174383(v=sql.110).aspx)

REPLICATE 语法

REPLICATE ( string_expression ,integer_expression )

integer_expression

任何整数类型的表达式,包括 bigint。 如果 integer_expression 为负,则返回 NULL。

字符串函数参阅

https://technet.microsoft.com/zh-cn/library/ms181984(v=sql.110).aspx

利用存储过程生成10行数据,编号为:code + 10位数字

CREATE PROCEDURE [dbo].[CodeTestData_pro]
AS
BEGIN
DECLARE @i INT;
SET @i = 1;
WHILE (
@i <= 10
)
BEGIN
INSERT INTO dbo.CodeTestData
(
[Code],
[Mobile]
)
VALUES
(
'Code' + REPLICATE('0', 10 - LEN(CAST(@i AS VARCHAR(50))))
+ CAST(@i AS VARCHAR(50)),
'138' + REPLICATE('0', 8 - LEN(CAST(@i AS VARCHAR(50))))
+ CAST(@i AS VARCHAR(50))
);
SET @i = @i + 1;
IF @i > 10
BREAK;
ELSE
CONTINUE;
END;
END;

运行结果

《Transact-SQL复制字符串(SQL Server ):补足0或者其他字符串》 运行结果.png

生成随机字母

select char(rand()26+65)
select char(rand()
26+97)

以下内容来源于互联网

IF ( @Code IS NULL )&#8211;第一次申请出境,Code根据ID生成
BEGIN
SET @ID = SCOPE_IDENTITY();
SET @Code = ( REPLICATE(&#8216;0&#8217;, ( 12 ) &#8211; LEN(@ID))
+ CONVERT([VARCHAR], @ID) );
END;

sql语句返回主键SCOPE_IDENTITY()
**获取SQL-SERVER数据库insert into操作的主键返回值,SCOPE_IDENTITY **
插入一条记录后想要立刻获取其数据表中的主键返回值。这个主键是自动生成的,其实实现的方式有很多,比如再进行一次查询,获取出来。或者在插入数据之前取 出最大值,在最大值上面加一等等,方法很多,但是有些很不方便。 个人感觉最快的方式就是,在插入数据后直接获取主键的值,然后返回过来。 方法如下: sql语句如下: INSERT INTO tableName (fieldname &#8230;) values (value &#8230;) SELECT @@IDENTITY AS returnName; 在sql语句中加入SELECT @@IDENTITY AS returnName;用来获取主键的值

在程序中 获取返回值

public int sqlexecutereader(string sql) {
DBopen(); SqlCommand myComm = new SqlCommand(sql, Connection);
int newID = Convert.ToInt32(myComm.ExecuteScalar());
DBclose();
return newID;
}

当然在此处主键是int类型的自动增加的

select SCOPE_IDENTITY() 返回上面操作的数据表最后row的IDENTITY 列的值;
返回插入到同一作用域中的 IDENTITY 列内的最后一个 IDENTITY 值。一个作用域就是一个模块——存储过程、触发器、函数或批处理。因此,如果两个语句处于同一个存储过程、函数或批处理中,则它们位于相同的作用域中。 SELECT @@IDENTITY 返回上面操作最后一个数据表的最后row的IDENTITY 列的值; 创建表: create table T_User(F_ID int identity(1,1) not null,F_Name varchar(20) not null) 插入数据: insert into T_User(F_Name) values(&#8216;我是谁&#8217;) Select SCOPE_IDENTITY() 存储过程: CREATE PROCEDURE [dbo].[sp_User](@F_Name int) AS begin tran Insertinto_T_User Insert into dbo.T_User(F_Name) values(@F_Name) Select SCOPE_IDENTITY()

REPLICATE
REPLICATE (Transact-SQL) 将字串值重复指定的次数
使用方法
REPLICATE ( string_expression ,integer_expression )
REPLICATE(字符串,重复的次数)
说明:
返回字符的长度仅受内存的限制,只要内存足够,可以任意长的字符串。
示例:
REPLICATE(&#8217;重复&#8217;,3)
输出结果为:
重复重复重复
【值得注意的是当 integer_expression 值为负值,则返回NULL 】
&#8212;-来源百度百科(http://baike.baidu.com/link?url=S2InFkqOXXldya3IUkYThRyvRXKcCvG-VIuXXHcsueXuXTfNgJK7NJjvf1GyNvCK6MSay_Iow9PqDy9rrNggd91ZhGax1f7xVDqqHYClhtW)&#8212;-


推荐阅读
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 创建项目:Visual Studio Online 入门指南
    本文介绍如何使用微软的 Visual Studio Online(VSO)创建和管理开发项目。作为一款基于云计算的开发平台,VSO 提供了丰富的工具和服务,简化了项目的配置和部署流程。 ... [详细]
  • 本文详细记录了在基于Debian的Deepin 20操作系统上安装MySQL 5.7的具体步骤,包括软件包的选择、依赖项的处理及远程访问权限的配置。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 构建基于BERT的中文NL2SQL模型:一个简明的基准
    本文探讨了将自然语言转换为SQL语句(NL2SQL)的任务,这是人工智能领域中一项非常实用的研究方向。文章介绍了笔者在公司举办的首届中文NL2SQL挑战赛中的实践,该比赛提供了金融和通用领域的表格数据,并标注了对应的自然语言与SQL语句对,旨在训练准确的NL2SQL模型。 ... [详细]
  • 本文详细介绍了如何使用Python编写爬虫程序,从豆瓣电影Top250页面抓取电影信息。文章涵盖了从基础的网页请求到处理反爬虫机制,再到多页数据抓取的全过程,并提供了完整的代码示例。 ... [详细]
  • 本文详细探讨了HTTP 500内部服务器错误的成因、解决方案及其在Web开发中的影响。通过对具体案例的分析,帮助读者理解并解决此类问题。 ... [详细]
  • 本文介绍如何通过创建替代插入触发器,使对视图的插入操作能够正确更新相关的基本表。涉及的表包括:飞机(Aircraft)、员工(Employee)和认证(Certification)。 ... [详细]
  • Ralph的Kubernetes进阶之旅:集群架构与对象解析
    本文深入探讨了Kubernetes集群的架构和核心对象,详细介绍了Pod、Service、Volume等基本组件,以及更高层次的抽象如Deployment、StatefulSet等,帮助读者全面理解Kubernetes的工作原理。 ... [详细]
  • andr ... [详细]
  • 本文由瀚高PG实验室撰写,详细介绍了如何在PostgreSQL中创建、管理和删除模式。文章涵盖了创建模式的基本命令、public模式的特性、权限设置以及通过角色对象简化操作的方法。 ... [详细]
  • 本文介绍如何在SQL Server中对Name列进行排序,使特定值(如Default Deliverable Submission Notification)显示在结果集的顶部。 ... [详细]
  • 本文介绍了如何利用 Spring Boot 和 Groovy 构建一个灵活且可扩展的动态计算引擎,以满足钱包应用中类似余额宝功能的推广需求。我们将探讨不同的设计方案,并最终选择最适合的技术栈来实现这一目标。 ... [详细]
author-avatar
_陈灵宝互粉号2
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有