Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8996243
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 15, 20262026-06-15T23:43:42+00:00 2026-06-15T23:43:42+00:00

I want to insert values into employee table. And those values are in string

  • 0

I want to insert values into employee table.
And those values are in string format ~ separated

E.g: AA~B~123

I am splitting it using following function

CREATE FUNCTION [db_owner].[FN_Split] (@String varchar(8000), @Delimiter char(1))
   returns @temptable TABLE (items varchar(8000))        
   as        
   begin        
       declare @idx int        
        declare @slice varchar(8000)        

        select @idx = 1        
            if len(@String)<1 or @String is null  return        

       while @idx!= 0        
       begin        
           set @idx = charindex(@Delimiter,@String)        
           if @idx!=0        
               set @slice = left(@String,@idx - 1)        
           else        
              set @slice = @String        

           if(len(@slice)>0)   
               insert into @temptable(Items) values(@slice)        

           set @String = right(@String,len(@String) - @idx)        
           if len(@String) = 0 break        
       end    
   return        
   end 

Now I get Output as

SELECT * FROM db_owner.FN_Split('AA~B~123','~')

Output

items
______
AA
B
123

Now I am stuck here

How can I insert above values in employee table???

like

insert into employee (name,add,phone)
values('AA','B','123');

Please guide.

Tried this but not working

insert into employee
SELECT * FROM db_owner.FN_Split('AA~BB~CC','~')

ERROR

Msg 213, Level 16, State 1, Line 1
Column name or number of supplied values does not match table definition.
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-15T23:43:43+00:00Added an answer on June 15, 2026 at 11:43 pm

    if you could add a small counter into the stored procedure like this then life would be easier:

    CREATE FUNCTION [db_owner].[FN_Split] (@String varchar(8000), @Delimiter char(1))      
       returns @temptable TABLE (orderId int,items varchar(8000))        
       as        
       begin        
           declare @idx int        
           declare @slice varchar(8000)        
           declare @orderId int = 0 --<added a counter
    
            select @idx = 1        
                if len(@String)<1 or @String is null  return        
    
           while @idx!= 0        
           begin        
               set @idx = charindex(@Delimiter,@String)        
               if @idx!=0        
                   set @slice = left(@String,@idx - 1)        
               else        
                  set @slice = @String        
    
               if(len(@slice)>0)   
                   insert into @temptable(orderId, Items) values(@orderId, @slice)        
               set @orderId = @orderId+1 --<increment the counter
    
               set @String = right(@String,len(@String) - @idx)        
               if len(@String) = 0 break        
           end    
       return        
       end 
    

    Your subsequent query could be something like the following:

    DECLARE @name varchar(50) = (SELECT items  FROM db_owner.FN_Split('AA~BB~CC','~') where orderId = 0)
    DECLARE @add varchar(50) = (SELECT items  FROM db_owner.FN_Split('AA~BB~CC','~') where orderId = 1)
    DECLARE @phone varchar(50) = (SELECT items  FROM db_owner.FN_Split('AA~BB~CC','~') where orderId = 2)
    insert into employee 
        (
        name,
        add,
        phone
        )
    values
        (
        @name, 
        @add,
        @phone
        )
    

    But have you tried changing the procedure so that it outputs the data in a horizontal format rather than the vertical output that you currently have?

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

i want to insert the values of two arrays into a table in a
Using VB.Net I want to get a all datagrid cell values, then insert into
I have the following table: I want to insert values from the MySQL workbench.
i want to insert values into a table, with an INSERT INTO statement but
I want to insert a range of values into my table create TEMPORARY TABLE
I want to insert values that are stored in a dictionary into a table.
I execute an INSERT INTO statement cursor.execute(INSERT INTO mytable(height) VALUES(%s),(height)) and I want to
I have the following code below which works, but I want to insert values
I want to insert values into a table_A from table_B where some conditions are
How can I insert values into table variable from another table by adding a

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.