1. 程式人生 > >SQL儲存過程生成一個指定長度的隨機字串

SQL儲存過程生成一個指定長度的隨機字串

if exists(select name from sysobjects where name='xsGetRandChar')
	drop proc xsGetRandChar
go

-- =============================================
-- Author:	yzb
-- Create date: 20140120
-- Description:	生成一個指定長度的隨機字串,預設為8位。
-- =============================================
create proc xsGetRandChar
	@len int = 8,					-- 隨機字元長度
	@strChar nvarchar(12) output	-- 定義輸出變數。返回值為隨機字串
as
	IF @len > 12
		set @len = 12;
	declare @n int;
	declare @strSQL varchar(500);
	declare @strTmp varchar(7);
	set @strTmp = 'select ';
	set @strSQL = @strTmp;
	set @n = 0;
	while @n < @len
		begin
			set @strSQL = @strSQL+ char(cast(rand()*10000 as int)%26+65);
			set @n = @n + 1;
		end
	-- 過濾掉select字串,得到隨機字串
	set @strChar = right(@strSQL,len(@strSQL)-len(@strTmp)-1);
	--print @strChar;
	--return @strChar;
go

--呼叫儲存,使用輸出引數獲取。
declare @strChar nvarchar(12)
exec xsGetRandChar 9,@strChar output
print @strChar




相關推薦

SQL儲存過程生成一個指定長度隨機字串

if exists(select name from sysobjects where name='xsGetRandChar') drop proc xsGetRandChar go -- ==

Qt 生成一個固定長度隨機字串

概述 我們都知道,使用Qt的qrand()可以生成一個隨機的數字,比如說,要生成100以內的隨機數,可以使用qrand()%100 來實現,那麼如果要生成一個固定長度的隨機字串該怎麼弄呢,其實原理很簡單,就是事先準備好一個字串陣列,然後結合qrand()函式隨機從字串陣列中通過迴圈取

Sql Server儲存過程一個表中抓取資料填充到另一張表中

  set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go -- ============================================= -- Author:  <alex,,Name> -- Create

Java指定長度隨機生成字串,且這個字串必須包含大小寫字母和數字

public static String gen(int length) {  char[] ss = new char[length];  int i=0; while(i<length) {     int f = (int) (Math.random()*3);

SQL 儲存過程裡呼叫另一個儲存過程

由於建立了一個儲存過程,並且要在另一個儲存過程裡呼叫這個儲存過程所以在網上找了一下相關的程式碼,現在總結一下,防止以後還會用到 由於這次我寫的儲存過程只需要返回一個求和的結果,所以我使用了output

sql儲存過程基礎語法

  MySQL 5.0 版本開始支援儲存過程。 儲存過程(Stored Procedure)是一種在資料庫中儲存複雜程式,以便外部程式呼叫的一種資料庫物件。 儲存過程是為了完成特定功能的SQL語句集,經編譯建立並儲存在資料庫中,使用者可通過指定儲存過程的名字並給定引數(需要時)

SQL儲存過程中分頁

</pre><pre name="code" class="sql">ALTER proc [dbo].[GetGoodsLsit] ----分頁條件 @StartIndex varchar(20), @PageSize varchar(20), ----排序條件

SQL儲存過程分頁與遊標使用

儲存過程: CREATE procedure p_splitpage    @sql nvarchar(4000), --要執行的sql語句  @page int=1,    --要顯示的頁碼 @pageSize int,&n

js 生成一定長度隨機字串

function randomName(len) { len = len || 23; var chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; var maxPos = chars.length;

oracle12C資料庫JSON的應用 --PL/SQL儲存過程中JSON解析應用篇

最近有些專案在資料庫oracle中使用到json格式的資料互動,對於oracle12以上的版本都支援JSON格式資料的使用,剛剛接觸的猿們可以到上一篇oracle資料庫使用json的簡單入門,最好參考官方的API文件關於oracle官方API文件對JSON的支援; 下面就比較詳細的說一下,關

【Python】Python生成一個不重複隨機list

在一個範圍內,生成一個固定元素個數的,不重複的隨機list. 錯誤方法 使用for迴圈逐一對生成每個值進行判斷,在有重複值的時候,不會被被新增.在需要生成多個隨機值的時候,容易出現輸出的結果比較少的情況.比如下面需要生成20個隨機值,可是一般輸出的都不到20. import ra

儲存過程 ------ 通過一個欄位條件更新另外一個欄位

儲存過程 ------ 通過一個欄位條件更新另外一個欄位 同一表的操作,我當時是用來通過推薦人賬號,更新推薦人id欄位 BEGIN DECLARE t_uid INT(11) DEFAULT 0; DECLARE t_username VARCHAR(255) DEFAULT

SQL儲存過程,函式

儲存過程和函式的區別: 儲存過程可以沒有返回值,函式必須有返回值; // 語法 CREATE PROCEDURE 儲存過程名(引數列表) BEGIN 儲存過程體; END 引數模式 IN , OUT

利用資料庫的儲存過程生成java的formbean物件

根據表名生成相應的javabean,欄位都是字串的 --執行過程 begin   -- Call the procedure   prc_common_formbean(ps_projec

PCB MS SQL 儲存過程(CLR) 實現Json轉DataTable表的方法

 一.準備需轉為DataTable的json字串         原json字串資料 [{"TechName":"ECN","TechNo":"EC_01","id":"1"},{"TechName":"流程指示","TechNo":"PI

10、PL/SQL儲存過程

子程式是執行特定任務的程式單元/模組。 這些子程式組合起來形成更大的程式。這種做法被稱為“模組化設計”。 子程式可以被稱為呼叫程式的另一個子程式或程式呼叫。 可以在以下幾個地方中建立一個子程式 - 在模式(schema)級別中 一個程式包中 在PL/SQL塊中 在模式

資料庫系統概論05-動態SQL&儲存過程&函式

動態SQL 使用SQL語句主變數 EXEC SQL BEGIN DECLARE SECTION; const char *stmt="CREATE TABLE test(a int);"/*SQL語句主變數,內容是建立表的SQL語句*/ EXEC SQL END

sql 儲存過程

目錄 一、儲存過程概念 1.概念 儲存過程是存放在資料庫伺服器上的預先定義與編譯好的T-SQL語句集合,是一個獨立的資料庫物件。 2.特點 實現了模組化程式設計。 儲存過程具有對資料庫立即訪問的功能。 使用儲存過程可以加快程式的執行速度。 使用儲存過

【Oracle】PL/SQL 儲存過程 顯式遊標、隱式遊標、動態遊標

  【Oracle】PL/SQL 顯式遊標、隱式遊標、動態遊標 2013年06月17日 09:02:51 AlphaWang 閱讀數:13009更多 個人分類: 【Database】 在PL/SQL塊中執行SELECT、INSERT、DELET

PL/SQL儲存過程操作例項及其講解說明

建立過程過程使用CREATE OR REPLACE PROCEDURE語句建立,使用CREATE OR REPLACE PROCEDURE語句簡化語法如下:CREATE[OR REPLACE]PROCEDURE procedure_name [(parameter_name