Parse a varchar passed to a stored procedure in SQL Server (2023)

How to parse a VARCHAR passed to a stored procedure in SQL Server?

Another alternative is to use "indirection" (as I've always called it)

Then you can do this...

proc Criar Sp_ReturnPrdoucts
@BrandIds varchar(500) = '6,7,8'
if (isnumeric(replace(@BrandIds,',',''))=1)
exec('SELECCIONE * DE tbl_Products como púnase a tbl_Brands b en p.ProductBrandId=b.BrandId DONDE b.BrandId IN ('+@BrandIds+')')

In this way, the select statement is constructed as a string and then executed.

Now I've added validation to make sure the string passed is purely numeric (after removing all commas).

Stored procedure to parse a string

One possible solution is to use XML


SELECT @text = 'City=Hyderabad | Cellphone=48629387429 | role=user | Name = Praveen'

SELECT @text = REPLACE(@text,'|',''')
,@text = REPLACE(@text,'=','="')
,@text = '<line' + @text + '"/>'

SELECT @xml = CAST(@text AS XML)

line.col.value('@Name[1]', 'varchar(100)') AS-Name
,line.col.value('@City[1]', 'varchar(100)') AS City
,line.col.value('@Mobile[1]', 'varchar(100)') AS Móvel
,line.col.value('@Role[1]', 'varchar(100)') AS-Role
FROM @xml.nodes('/fila') AS line(col)

Pass list of strings to a stored procedure

Convert the comma-separated value into a table using XML. Use this updated procedure.

USE [application]
/****** Objeto: StoredProcedure [dbo].[GetWorkspaceMapDetailsForUserByGroups]
Script date: 02/16/2015 10:37:46 ******/
ALTER PROCEDURE [dbo].[GetWorkspaceMapDetailsForUserByGroups]
@workspaceID int,
@viewMap nvarchar(256)

GeoAppMapDef m
m.workspaceid = @workspaceid
y m.IsDeleted = 0
e m.ViewMap IN
Split.a.value('.', 'VARCHAR(100)') AS CVS
SELECT CAST ( '<M>' + REPLACE(@viewMap, ',', '</M><M>') + '</M>' AS XML) AS CVS
) AS A CROSS APPLICATION CVS.nodes('/M') AS Division(a)

(Video) Stored procedures in sql server Part 18

How to convert varchar to integer in SQL Server stored procedure?

The number table solution I posted for this question is the most efficient solution. Print bullets before each sentence + newline after each sentence Insert SQL code once you get home

to edit

The basic unit of work is the online table-valued function. You may have heard of TVF and how they are taking over SQL Server, but this belongs to them.multiple statementtypes Inline lines are good as the optimizer can understand them and doesn't make terrible plans.

dbo.StringSplitreturns a single-column table (varchar) in which values ​​are partitioned based on the specified delimiter. You can reduce the required lines of code (derived tables from L0 to L5) if you already have tables of numbers or a fast number generator in your data. I suppose not. The technique of using a numeric table to split data is not mine, but I trust the SQL luminaries who did the analysis.

They asked for a lawsuit so I gave itdbo.StringSplitToIntsto comply, but all it does is call the TVF with the correct parameters. You can extract the select statement and align it or wherever you need it.

-- This function splits a delimited string with good performance
-- Features
, @char(1) delimiter = ','
-- L0 to L5 simulate a table of numbers
, L1AS
0 like c
, L2AS
0 like c
0 like c
L2 as A
, L4 HOW
0 like c
L3 as A
, L5 HOW
0 like c
L4 like A
, SOURCE_DATA ( id , content ) AS
-- This query simulates your input data
-- This implementation can be simplified as our function
- only accepts 1 row of data, but this may apply
-- any kind of problem, not just a single line of input
SELECT 1, @input
-- this query is very important. The current NUMS query generates a
- very large set of numbers, but we only need 1 up to the maximum length of our
-- source data. We can use a rent function from 2008
-- TOP acquires a dynamic value
No. Number
-- This query converts multiple rows to a single row based on the specified delimiter
-- The ID (or a unique value from the original data must be retained for reassembly
, LTRIM(substring(SD.contents, Number, charindex(@delimiter, SD.contents + @delimiter, Number) - Number)) AS Zeilen
number <= len(SD.content)
AND substring(@delimiter + SD.content, Number, 1) = @delimiter

-- This is an exaggeration, as the resource is more versatile, however
-- in the spirit of delivering what was asked for, this process
-- call the function and convert the data to the appropriate type
CREATE PROCEDURE dbo.StringSplitToInts
, @char(1) delimiter = ','
CAST(SS.lines AS int) AS int_tokens
dbo.StringSplit(@input, @delimiter) SS


-- Over 9000!
EJECUTAR dbo.StringSplitToInts '100.200.300.500.9000'

How to pass a list of strings as parameters in a stored procedure in SQL?

You must use table-valued parameters

  1. Define the new type as follows

    CREATE TYPE Prod_Code AS TABLE(ProductCode varchar);
  2. Then use that type in your stored procedure

    create procedure [dbo].[aggregation_proc]
    @Prod_Code Prod_Code AULA SOLO,
    @Prod_Desc varchar (30)
  3. Now populate the table before calling the stored procedure

    (Video) SQL Server - Pass Multiple varchars to single parameter in stored procedure

    declarar @PC Prod_Code;
    Enter VALUES @PC('12012'),('12011'),('12014')
  4. Now call the SP like this

    EXECUTIVE dbo.proc_aggregation @PC, @Prod_Desc;

Passing a varchar full of comma separated values ​​to a SQL Server IN function

Do not use a loop function to split a string!, my function below splits a string very quickly, with no loops!

Before using my function you need to set up a "help table", you only need to do this once per database:

(int number NOT NULL,
DECLARE @x int
DURING @x<8000
DEFINE @x=@x+1

Use this function to split your string, which is non-repeating and very fast:

CREATE FUNCTION [dbo].[FN_ListToTable]
@SplitOn char(1) - REQUIRED, the character after which to split the string @List
,@List varchar(8000) - REQUIRED, the list to split
tabela @ParsedList
listen to varchar(500)

Takes the supplied @List string and splits it based on the provided @SplitOn character.
One table is returned, one row per shared element, with a column name of "ListValue".
This feature works for both fixed and variable length articles.
Empty and null elements are not included in the result set.

Returns a table, one row per list item, with the column name "ListValue".

SELECT * FROM dbo.FN_ListToTable(',','1,12,123,1234,54321,6,A,*,|||,,,,B')

I hear

(10 lines affected)


--SINGLE QUERY-- --do not return empty rows
I hear
LTRIM(RTRIM(SUBSTRING(List2, number+1, CHARINDEX(@SplitOn, List2, number+1)-number - 1))) AS ListValue
SELECT @SplitOn + @List + @SplitOn AS List2
) like dt
INNER JOIN números n ON n.Number < LEN(dt.List2)
DONDE SUBCADENA(Lista2, Zahl, 1) = @SplitOn
) dt2
WHERE ListValue IS NOT NULL AND ListValue! =''

(Video) Procedure Tutorial in SQL | SQL Stored Procedure | Procedure in SQL


FIN - Function FN_ListToTable

You can use this function as a table in a join:

coluna1, coluna2, coluna3...
VON TuMesa
INNER JOIN FN_ListToTable(',',@YourString) s ON YourTable.ID = s.ListValue

Here is your example:

Select * from some table where tableid is (SELECT ListValue FROM dbo.FN_ListToTable(',',@Ids) s)

related topics

Select columns with specific column names in Postgresql

What happens to duplicates when inserting multiple rows

Join two different tables and remove duplicate entries

Slick 3.0 - Updates columns in a table and returns the complete table object

This SQL 'Sort by' doesn't work correctly

Determine the size of an SQL result set in KB

(Video) Stored procedures with output parameters Part 19

MySQL syntax explained

Natural variety that admits large quantities

Remove extended ASCII characters above 128 (Sql)

Update row with subquery returning multiple rows

SQL: intersection syntax error

How to check if query uses index

Simple update statement so that all rows get a different value

Place Pg_Try_Advisory_Xact_Lock() in a nested subquery

Select top N records ordered by X but have results in reverse order

SQL Server: Returns column names based on the value of a record

Output Inserted.Id and another field

(Video) SQL Stored Procedures - What They Are, Best Practices, Security, and More...

Sql: find nearest Lat/Lon record in Google Bigquery


How to pass list of strings to stored procedure in SQL Server? ›

C# SQL Server - Passing a list to a stored procedure
  1. using (SqlConnection conn = new SqlConnection(connstring))
  2. {
  3. conn.Open();
  4. using (SqlCommand cmd = new SqlCommand("InsertQuerySPROC", conn))
  5. {
  6. cmd.CommandType = CommandType.StoredProcedure;
  7. var STableParameter = cmd.Parameters.AddWithValue("@QueryTable", QueryTable);

How fetch data from procedure in SQL? ›

SQL Server select from stored procedure with parameters
  1. First, create a stored procedure that uses multiple parameters to execute some task and return the result.
  2. Next, store the result returned by a stored procedure in a table variable.
  3. In the end, use the SELECT statement to fetch some data from the table variable.
Jul 13, 2021

How do I get the content of a stored procedure in SQL Server? ›

Using SQL Server Management Studio

Expand Stored Procedures, right-click the procedure and then select Script Stored Procedure as, and then select one of the following: Create To, Alter To, or Drop and Create To. Select New Query Editor Window. This will display the procedure definition.

How to split string in SQL stored procedure? ›

The STRING_SPLIT(string, separator) function in SQL Server splits the string in the first argument by the separator in the second argument. To split a sentence into words, specify the sentence as the first argument of the STRING_SPLIT() function and ' ' as the second argument.

How do you pass a list of values into a stored procedure? ›

There are several ways to do this. While using older versions of SQL Server, I've used to the XML method to pass array or list to stored procedure. In the latest versions of SQL Server, we can use the User Defined Data Type (UDT) with a base type of table to send array or list through a parameter.

How to pass string array as parameter in SQL stored procedure? ›

You can convert your array to string in C# and pass it as a Stored Procedure parameter as below, int[] intarray = { 1, 2, 3, 4, 5 }; string[] result = intarray. Select(x=>x. ToString()).

How to get column value from stored procedure in SQL? ›

The only way to work with the results of a stored procedure in T-SQL is to use the INSERT INTO ... EXEC syntax. That gives you the option of inserting into a temp table or a table variable and from there selecting the data you need. That requires knowing the table definition.

Can we return value from stored procedure? ›

A stored procedure does not have a return value but can optionally take input, output, or input-output parameters. A stored procedure can return output through any output or input-output parameter.

How do you get the output of a stored procedure in a variable in SQL Server? ›

You can use the return statement inside a stored procedure to return an integer status code (and only of integer type). By convention a return value of zero is used for success. If no return is explicitly set, then the stored procedure returns zero. You should use the return value for status codes only.

How to find stored procedure containing text in SQL Server? ›

To find stored procedures name which contain search text, write this query and execute.
  3. WHERE [text] LIKE '%type here your text%'
  4. AND OBJECTPROPERTY(id, 'IsProcedure') = 1.
Aug 22, 2016

How do you pass a string variable in SQL query? ›

To pass string parameters in an SQL statement, single quotes (' ') must be part of the query. Example for Single quotes being part of the query.

How to extract specific word from string in SQL? ›

The SUBSTRING() function extracts some characters from a string.

How to split varchar value in SQL Server? ›

How to Split a String by a Delimited Char in SQL Server?
  1. Use of STRING_SPLIT function to split the string.
  2. Create a user-defined table-valued function to split the string,
  3. Use XQuery to split the string value and transform a delimited string into XML.
Sep 6, 2020

How do you split a string and store it? ›

The split() method splits a string into an array of substrings. The split() method returns the new array. The split() method does not change the original string. If (" ") is used as separator, the string is split between words.

How do you split a string and store it in a list? ›

The split() method splits a string into a list. You can specify the separator, default separator is any whitespace. Note: When maxsplit is specified, the list will contain the specified number of elements plus one.

Can you pass table variable into stored procedure? ›

Similarly, a variable of table type has scope like any other local variable that is created by using a DECLARE statement. You can declare table-valued variables within dynamic Transact-SQL statements and pass these variables as table-valued parameters to stored procedures and functions.

Can I pass table variable to stored procedure? ›

A Table Variable of User Defined Table Type has to be created of the same schema as that of the Table Valued parameter and then it is passed as Parameter to the Stored Procedure in SQL Server.

How to pass string array in Sqlparameter to in clause in SQL? ›

select Sizes,SUM(Quantity) from tbl_SizeBreakup where (Brand=@brand) and (Combo in ('1','2')) ... So If I pass 1 parameter, working as expected. The combo which I should pass is a string[](string array).

How do you pass a string as a parameter in a method? ›

Method signature

public static void myMethod(String fname) ; The method takes the String parameter and then appends additional text to the string and then outputs the value to the console. The method is invoked from the method by passing some sample strings with male names.

How do you pass a string as a parameter? ›

To pass a one dimensional string to a function as an argument we just write the name of the string array variable. In the following example we have a string array variable message and it is passed to the displayString function.

How do you pass a string into an array? ›

In Java, there are four ways to convert a String to a String array:
  1. Using String. split() Method.
  2. Using Pattern. split() Method.
  3. Using String[ ] Approach.
  4. Using toArray() Method.
May 30, 2022

How can we check particular column in stored procedure in SQL Server? ›

SELECT DISTINCT , AS 'Procedure_Name' , AS 'Table_Name' , d. depid FROM sysdepends d , sysobjects o , sysobjects oo WHERE = AND = d. depid ORDER BY ,; sql-server.

How do you SELECT from the output of a stored procedure? ›

You can copy output from sp to temporaty table. Save this answer.
14 Answers
  1. create a table variable to hold the result set from the stored proc and then.
  2. insert the output of the stored proc into the table variable, and then.
  3. use the table variable exactly as you would any other table...

How do I get the specific data from a column in SQL? ›

The syntax is: SELECT column1, column2 FROM table1, table2 WHERE column2='value';
In the above SQL statement:
  1. The SELECT clause specifies one or more columns to be retrieved; to specify multiple columns, use a comma and a space between column names. ...
  2. The FROM clause specifies one or more tables to be queried.
Sep 20, 2021

How do you return a Boolean value from a stored procedure in SQL Server? ›

You can't. There is no boolean datatype and the procedure return code can only be an int . You can return a bit as an output parameter though. Depending on what you're doing you could use a function instead.

How can I get return values and output values from a stored procedure with EF core? ›

Get a SQL Server stored procedure return value with EF Core
  1. var parameterReturn = new SqlParameter { ParameterName = "ReturnValue", SqlDbType = System.Data.SqlDbType.Int, Direction = System. Data. ...
  2. var result = db. ...
  3. var procs = new NorthwindContextProcedures(db); var returned = new OutputParameter<int>(); await procs.
Nov 2, 2020

Can we use return in stored procedure in SQL? ›

You can use one or more RETURN statements in a stored procedure. The RETURN statement can be used anywhere after the declaration blocks within the SQL-procedure-body.

How to store the output of a stored procedure in a variable? ›

To execute a stored procedure with an output parameter we first need to declare variables to store the output values. storeParameter2Value variable is declared to store the value of Parameter2 that will be output from our stored procedure. Now in the EXEC condition, we list all our input parameters as usual.

What is the return value after executing stored procedure? ›

Return Value in SQL Server Stored Procedure

In default, when we execute a stored procedure in SQL Server, it returns an integer value and this value indicates the execution status of the stored procedure. The 0 value indicates, the procedure is completed successfully and the non-zero values indicate an error.

How to return resultset from stored procedure in SQL Server? ›

To return a result set from an SQL procedure:
  1. Specify the DYNAMIC RESULT SETS clause in the CREATE PROCEDURE statement.
  2. DECLARE the cursor using the WITH RETURN clause.
  3. Open the cursor in the SQL procedure.
  4. Keep the cursor open for the client application - do not close it.

How to find tables that contain a specific string in SQL Server? ›

How to display the tables containing particular strings in SQL?
  2. -- This returns all the tables in the database system containing string 'student' in the name of the table. ...
  3. -- Lists all the tables in all databases containing string 'student' in the name of the table.

How to find and replace text in all Stored Procedures SQL Server? ›

  1. Generate script of all stored procedures - You can use the scripting wizrd to generate the script. Right-click the db –> tasks –> Generate scripts –> go through the wizard. ...
  2. Generate an updated script - The same script is used to update all the eligible SP's with replace function.
  3. Create alias for linked servers.
Jan 15, 2017

How to match string in SQL? ›

SQL LIKE Pattern Matching Tutorial
  1. Use LIKE for Exact String Match.
  2. Use '%' to match any number of characters.
  3. Use '_' to match one (and only one) character.
  4. Use both '%' and '_' to match any pattern.
  5. Use NOT to find strings that do not match a pattern.
  6. Use LOWER (or UPPER) with LIKE for case-insensitive pattern matching.

How to pass dynamic parameters to stored procedure in SQL Server? ›

The sp_executesql stored procedure is used to execute dynamic SQL queries in SQL Server.
Passing parameters to sp_executesql stored procedure
  1. First, you need to create a variable that is going to store the list of parameters.
  2. Next, in the query string, you need to pass the names of the parameters.
Dec 24, 2019

How to execute stored procedure by passing parameters in SQL Server? ›

Expand the database that you want, expand Programmability, and then expand Stored Procedures. Right-click the user-defined stored procedure that you want and select Execute Stored Procedure. In the Execute Procedure dialog box, specify a value for each parameter and whether it should pass a null value.

What does %s do in SQL? ›

%s is a placeholder used in functions like sprintf. Check the manual for other possible placeholders. $sql = sprintf($sql, "Test"); This would replace %s with the string "Test".

How do I extract a specific character from a string? ›

The substr() method extracts a part of a string. The substr() method begins at a specified position, and returns a specified number of characters. The substr() method does not change the original string. To extract characters from the end of the string, use a negative start position.

How do you extract a particular string from a string? ›

You can extract a substring from a String using the substring() method of the String class to this method you need to pass the start and end indexes of the required substring.

How do I extract a string after a specific character? ›

To get text following a specific character, you use a slightly different approach: get the position of the character with either SEARCH or FIND, subtract that number from the total string length returned by the LEN function, and extract that many characters from the end of the string.

How to parse string with delimiter in SQL? ›

SQL Split String by Delimiter
  1. SPLIT(value[, delimiter]) The function takes the string and the delimiter as the arguments. ...
  2. The function will split a string based on a comma delimiter by default. However, you must specify the target delimiter for bytes. ...
  3. SELECT. SPLIT('a b c d e f g', ' ') AS arr; ...
  4. arr. ...
  5. SELECT. ...
  6. arr. ...
  7. SELECT. ...
  8. arr.

What is parsename in SQL Server? ›

Returns the specified part of an object name. The parts of an object that can be retrieved are the object name, schema name, database name, and server name. The PARSENAME function does not indicate whether an object by the specified name exists. PARSENAME just returns the specified part of the specified object name.

How do I parse varchar to numeric in SQL? ›

To convert a varchar type to a numeric type, change the target type as numeric or BIGNUMERIC as shown in the example below: SELECT CAST('344' AS NUMERIC) AS NUMERIC; SELECT CAST('344' AS BIGNUMERIC) AS big_numeric; The queries above should return the specified value converted to numeric and big numeric.

What does split () do to a string? ›

Split is used to break a delimited string into substrings. You can use either a character array or a string array to specify zero or more delimiting characters or strings.

How do you divide a string into two parts? ›

  1. STEP 1: START.
  2. STEP 2: DEFINE str = "aaaabbbbcccc"
  3. STEP 3: DEFINE len.
  4. STEP 4: SET n =3.
  5. STEP 5: SET temp = 0.
  6. STEP 6: chars = len/n.
  7. STEP 7: DEFINE String[] equalstr.
  8. STEP 8: IF (len%n!=0) then PRINT ("String can't be divided into equal parts") else go to STEP 9.

How do I split a string into multiple variables? ›

To split string variables at each whitespace, we can use the split() function with no arguments. The syntax for split() function is split(separator, maxsplit) where the separator specifies the character at which the string should be split. maxsplit specifies the number of times the string has to be split.

How do you split a string into parts based on a delimiter? ›

Using String. split() Method. The split() method of the String class is used to split a string into an array of String objects based on the specified delimiter that matches the regular expression.

How do you separate items in a list? ›

Usually, we use a comma to separate three items or more in a list. However, if one or more of these items contain commas, then you should use a semicolon, instead of a comma, to separate the items and avoid potential confusion.

How to declare list in stored procedure SQL? ›

DECLARE @list NVARCHAR(MAX) SET @list = '1,2,5,7,10'; DECLARE @pos INT DECLARE @nextpos INT DECLARE @valuelen INT DECLARE @tbl TABLE (number int NOT NULL) SELECT @pos = 0, @nextpos = 1; WHILE @nextpos > 0 BEGIN SELECT @nextpos = charindex(',', @list, @pos + 1) SELECT @valuelen = CASE WHEN @nextpos > 0 THEN @nextpos ...

How do I store a list of strings? ›

To do this we use the split() method in string. The split method is used to split the strings and store them in the list. The built-in method returns a list of the words in the string, using the “delimiter” as the delimiter string.

Can you pass list string to a method which accepts list object? ›

Any Collection can be passed as an argument to the constructor as long as its type extends the type of the ArrayList , as String extends Object . The constructor takes a Collection , but List is a subinterface of Collection , so you can just use the List<String> .

What to pass bulk value in stored procedure? ›

Passing Table Valued Parameter to Stored Procedure: Part 1
  1. Pass each record one by one to stored procedure - this slows down entire process.
  2. BulkCopy - this works only for insert operations.
  3. Pass XML string - parsing XML string on SQL Server is very costly operation in terms of performance.
Jun 11, 2019

How do you DECLARE a variable in SQL stored procedure? ›

Variables in SQL procedures are defined by using the DECLARE statement. Values can be assigned to variables using the SET statement or the SELECT INTO statement or as a default value when the variable is declared. Literals, expressions, the result of a query, and special register values can be assigned to variables.

How to print variable value in SQL Server stored procedure? ›

Usually, we use the SQL PRINT statement to print corresponding messages or track the variable values while query progress. We also use interactions or multiple loops in a query with a while or for a loop. We can also use the SQL PRINT statement to track the iteration.

How can we find stored procedure containing a particular text in SQL Server? ›

To find stored procedures name which contain search text, write this query and execute.
  3. WHERE [text] LIKE '%type here your text%'
  4. AND OBJECTPROPERTY(id, 'IsProcedure') = 1.
Aug 22, 2016

What is the difference between list and array? ›

List is used to collect items that usually consist of elements of multiple data types. An array is also a vital component that collects several items of the same data type. List cannot manage arithmetic operations. Array can manage arithmetic operations.

How do you return a string to a list? ›

To convert a list to a string, use Python List Comprehension and the join() function. The list comprehension will traverse the elements one by one, and the join() method will concatenate the list's elements into a new string and return it as output.

What is the difference between list <?> and list object? ›

List is a raw type and thus can contain an object of any type whereas List<T> may contain an object of type T or subtype of T. We can assign a list object of any type to a raw type List reference variable, whereas we can only assign a list object of type <T> to a reference variable of type List<T> .

Which method is used to convert a list of strings to a string? ›

The most pythonic way of converting a list to string is by using the join() method. The join() method is used to facilitate this exact purpose. It takes in iterables, joins them, and returns them as a string. However, the values in the iterable should be of string data type.

Can a string slice expression be used on a list? ›

Slices for strings and tuples

So far, we have shown examples of lists ( list type), but slices can be used with other sequence objects such as strings str and tuples tuple as well. However, str and tuple are immutable, so new values cannot be assigned.

Can pass 3 types of parameters to stored procedures What are they? ›

As a program, a stored procedure can take parameters. There are three types of parameters: IN, OUT and INOUT.


1. SQL Stored Procedures
(Gregory Thomas Hay)
2. SQL Server Programming Part 1 - Stored Procedure Basics
3. CAST() and CONVERT() in SQL Server
(SQL Data Ninja)
4. Advanced SQL Tutorial | Stored Procedures + Use Cases
(Alex The Analyst)
5. Stored Procedure In SQL Server - SQL Stored Procedure - What Is Stored Procedure ( Hindi/Urdu )
(Learning Never Ends)
6. How to pass multiple values to sql server store procedure? And how to use it in SSRS?
(BI Insights Inc)


Top Articles
Latest Posts
Article information

Author: Msgr. Benton Quitzon

Last Updated: 10/07/2023

Views: 6431

Rating: 4.2 / 5 (63 voted)

Reviews: 86% of readers found this page helpful

Author information

Name: Msgr. Benton Quitzon

Birthday: 2001-08-13

Address: 96487 Kris Cliff, Teresiafurt, WI 95201

Phone: +9418513585781

Job: Senior Designer

Hobby: Calligraphy, Rowing, Vacation, Geocaching, Web surfing, Electronics, Electronics

Introduction: My name is Msgr. Benton Quitzon, I am a comfortable, charming, thankful, happy, adventurous, handsome, precious person who loves writing and wants to share my knowledge and understanding with you.