Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > multiple record inserts

Reply
Thread Tools

multiple record inserts

 
 
Jim
Guest
Posts: n/a
 
      01-18-2008
Using aspx and vb with sql2005 server.
I have an insert form/query that will insert a record. What I want to do is
on the page have a dropdown list with numbers. From the dropdown list, the
user will select how many records to insert the date (each insert is a
seperate record).

For example, if a user has 20 parts to enter, instead of entering the same
information 20 times, they can select the number 20 from the dropdown list
and then fillout the information in the form and when the "Insert" button is
clicked, the sql insert query will run 20 times.

Is this possible? If so, can you point me to a place that either has an
example or talks about it?

Thanks.


 
Reply With Quote
 
 
 
 
sloan
Guest
Posts: n/a
 
      01-18-2008


One idea.

Create a strong dataset.

EmployeeDS

with 1 table.

Employee (table)

with some columns

EmployeeID, LastName, FirstName
.............

After your user selects "I want to insert 10 new employees"....
on the code behind, create a "dummy" EmployeeDS, and then bind your GridView
or Repeater to it.


dim ds as EmployeeDS = new EmployeeDS
--excuse any syntax errors with my vb.net skillzz
For i as int32 = 0 to 9

EmployeeDS.EmployeeRow newRow = ds.Employee.NewEmployeeRow

newRow.EmpID = i '' obviously this won't be the actual empid, but
will give you some kind of uniqueidentifier until you ship it to the
database

ds.Employee.AddNewEmployeeRow = newRow

next i

Then bind your GridView to
gv1.DataSource = ds.Employee
gv1.DataBind


That'll give you the entries you need.


THEN!!

You can dual use the EmployeeDS....
http://support.microsoft.com/kb/315968

and insert all 10 new employees into the db in a single shot.

Sweet!






"Jim" <(E-Mail Removed)> wrote in message
news:%234jda$(E-Mail Removed)...
> Using aspx and vb with sql2005 server.
> I have an insert form/query that will insert a record. What I want to do
> is on the page have a dropdown list with numbers. From the dropdown list,
> the user will select how many records to insert the date (each insert is a
> seperate record).
>
> For example, if a user has 20 parts to enter, instead of entering the same
> information 20 times, they can select the number 20 from the dropdown list
> and then fillout the information in the form and when the "Insert" button
> is clicked, the sql insert query will run 20 times.
>
> Is this possible? If so, can you point me to a place that either has an
> example or talks about it?
>
> Thanks.
>



 
Reply With Quote
 
 
 
 
Jim
Guest
Posts: n/a
 
      01-18-2008
Thanks for the reply. If I understand your message, this would make a form
appear with 10 rows in a gridview that I would fillout 10 different
firstnames and lastnames then click "insert" and it would put all 10
recoreds in.

What I'm actually after is inserting identical data 10 times. Basically have
the follwing query run 10 times over.
InsertCommand="INSERT INTO [1TestPart] ([part_name]) VALUES (@part_name)">

-- start database table --
CREATE TABLE [dbo].[1TestPart](
[part_id] [int] IDENTITY(1,1) NOT NULL,
[part_name] [nvarchar](50) NULL,
[part_serial] [int] NULL,
CONSTRAINT [PK_1TestPart] PRIMARY KEY CLUSTERED
(
[part_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY =
OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
-- end database table --


Part Name:
"sloan" <(E-Mail Removed)> wrote in message
news:%(E-Mail Removed)...
>
>
> One idea.
>
> Create a strong dataset.
>
> EmployeeDS
>
> with 1 table.
>
> Employee (table)
>
> with some columns
>
> EmployeeID, LastName, FirstName
> ............
>
> After your user selects "I want to insert 10 new employees"....
> on the code behind, create a "dummy" EmployeeDS, and then bind your
> GridView or Repeater to it.
>
>
> dim ds as EmployeeDS = new EmployeeDS
> --excuse any syntax errors with my vb.net skillzz
> For i as int32 = 0 to 9
>
> EmployeeDS.EmployeeRow newRow = ds.Employee.NewEmployeeRow
>
> newRow.EmpID = i '' obviously this won't be the actual empid, but
> will give you some kind of uniqueidentifier until you ship it to the
> database
>
> ds.Employee.AddNewEmployeeRow = newRow
>
> next i
>
> Then bind your GridView to
> gv1.DataSource = ds.Employee
> gv1.DataBind
>
>
> That'll give you the entries you need.
>
>
> THEN!!
>
> You can dual use the EmployeeDS....
> http://support.microsoft.com/kb/315968
>
> and insert all 10 new employees into the db in a single shot.
>
> Sweet!
>
>
>
>
>
>
> "Jim" <(E-Mail Removed)> wrote in message
> news:%234jda$(E-Mail Removed)...
>> Using aspx and vb with sql2005 server.
>> I have an insert form/query that will insert a record. What I want to do
>> is on the page have a dropdown list with numbers. From the dropdown list,
>> the user will select how many records to insert the date (each insert is
>> a seperate record).
>>
>> For example, if a user has 20 parts to enter, instead of entering the
>> same information 20 times, they can select the number 20 from the
>> dropdown list and then fillout the information in the form and when the
>> "Insert" button is clicked, the sql insert query will run 20 times.
>>
>> Is this possible? If so, can you point me to a place that either has an
>> example or talks about it?
>>
>> Thanks.
>>

>
>



 
Reply With Quote
 
sloan
Guest
Posts: n/a
 
      01-18-2008

Then just deviate my example to suit your needs.

When the user clicks 'Go', then create the strong ds, instert X records, and
then ship it off.

If you do the BULK INSERT, you'll save time. Though its slightly harder to
code.

Or you can run the same usp or inline-sql statement 10 times.

Either way.

BULK INSERT method gives you the advantage of a "all or nothing" ... without
coding up transactions in DotNet.

See my cleaned up and nicer version of the MS KB here:
http://groups.google.com/group/micro...d13f38f82bec77





"Jim" <(E-Mail Removed)> wrote in message
news:eIFLQ$(E-Mail Removed)...
> Thanks for the reply. If I understand your message, this would make a form
> appear with 10 rows in a gridview that I would fillout 10 different
> firstnames and lastnames then click "insert" and it would put all 10
> recoreds in.
>
> What I'm actually after is inserting identical data 10 times. Basically
> have the follwing query run 10 times over.
> InsertCommand="INSERT INTO [1TestPart] ([part_name]) VALUES (@part_name)">
>
> -- start database table --
> CREATE TABLE [dbo].[1TestPart](
> [part_id] [int] IDENTITY(1,1) NOT NULL,
> [part_name] [nvarchar](50) NULL,
> [part_serial] [int] NULL,
> CONSTRAINT [PK_1TestPart] PRIMARY KEY CLUSTERED
> (
> [part_id] ASC
> )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY =
> OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
> ) ON [PRIMARY]
> -- end database table --
>
>
> Part Name:
> "sloan" <(E-Mail Removed)> wrote in message
> news:%(E-Mail Removed)...
>>
>>
>> One idea.
>>
>> Create a strong dataset.
>>
>> EmployeeDS
>>
>> with 1 table.
>>
>> Employee (table)
>>
>> with some columns
>>
>> EmployeeID, LastName, FirstName
>> ............
>>
>> After your user selects "I want to insert 10 new employees"....
>> on the code behind, create a "dummy" EmployeeDS, and then bind your
>> GridView or Repeater to it.
>>
>>
>> dim ds as EmployeeDS = new EmployeeDS
>> --excuse any syntax errors with my vb.net skillzz
>> For i as int32 = 0 to 9
>>
>> EmployeeDS.EmployeeRow newRow = ds.Employee.NewEmployeeRow
>>
>> newRow.EmpID = i '' obviously this won't be the actual empid, but
>> will give you some kind of uniqueidentifier until you ship it to the
>> database
>>
>> ds.Employee.AddNewEmployeeRow = newRow
>>
>> next i
>>
>> Then bind your GridView to
>> gv1.DataSource = ds.Employee
>> gv1.DataBind
>>
>>
>> That'll give you the entries you need.
>>
>>
>> THEN!!
>>
>> You can dual use the EmployeeDS....
>> http://support.microsoft.com/kb/315968
>>
>> and insert all 10 new employees into the db in a single shot.
>>
>> Sweet!
>>
>>
>>
>>
>>
>>
>> "Jim" <(E-Mail Removed)> wrote in message
>> news:%234jda$(E-Mail Removed)...
>>> Using aspx and vb with sql2005 server.
>>> I have an insert form/query that will insert a record. What I want to
>>> do is on the page have a dropdown list with numbers. From the dropdown
>>> list, the user will select how many records to insert the date (each
>>> insert is a seperate record).
>>>
>>> For example, if a user has 20 parts to enter, instead of entering the
>>> same information 20 times, they can select the number 20 from the
>>> dropdown list and then fillout the information in the form and when the
>>> "Insert" button is clicked, the sql insert query will run 20 times.
>>>
>>> Is this possible? If so, can you point me to a place that either has an
>>> example or talks about it?
>>>
>>> Thanks.
>>>

>>
>>

>
>



 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
DBI:mysql how to do multiple inserts/modification? Tomasz Chmielewski Perl Misc 3 02-13-2008 08:08 PM
Re: Multiple inserts question Steve C. Orr [MCSD, MVP, CSM, ASP Insider] ASP .Net 1 01-22-2007 08:56 PM
You cannot add or change a record because a related record is required in table 'lok" André ASP .Net 0 06-25-2006 01:30 PM
Retrieving Record Key while creating the record. =?Utf-8?B?SnVzdGlu?= ASP .Net 4 10-05-2004 08:11 PM
" Invalid Disk Table in Boot Record - Boot Record could not be repaired " reply@newsgroup.please Computer Support 2 12-01-2003 05:37 AM



Advertisments