473,418 Members | 2,267 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,418 software developers and data experts.

ExecuteReader requires an open and available Connection. The connection's current state is Open, Executing.

I am using VB.Net 2003 and MS Access (connecting using OleDBConnection).
I read using DataAdapter and DataSet, not DataReader.
When many people try to access the database at the same time, I get the
error "ExecuteReader requires an open and available Connection. The
connection's current state is Open, Executing." I do not use ExecuteReader,
why the error says ExecuteReader. What does it mean ?
When I get this error, is there a way for me to loop and wait until there is
an open and available Connection ?
Thank you.

Dim cmd As New OleDb.OleDbCommand
Dim da As OleDb.OleDbDataAdapter
Dim ds As DataSet

With cmd
.Connection = ConnectionDemoOLE
.CommandText = sql
Try
da = New OleDb.OleDbDataAdapter
ds = New DataSet
da.SelectCommand = cmd
da.Fill(ds)
Catch ex As Exception
msgbox ex.message '-error "ExecuteReader requires an open and
available Connection. The connection's current state is Open, Executing."
end try
Apr 17 '07 #1
7 13510
On Apr 16, 11:25 pm, "fniles" <fni...@pfmail.comwrote:
When many people try to access the database at the same time, I get the
error "ExecuteReader requires an open and available Connection. The
connection's current state is Open, Executing." I do not use ExecuteReader,
why the error says ExecuteReader. What does it mean ?
Internally, the Fill method uses ExecuteReader.
When I get this error, is there a way for me to loop and wait until there is
an open and available Connection ?
Thank you.

Dim cmd As New OleDb.OleDbCommand
Dim da As OleDb.OleDbDataAdapter
Dim ds As DataSet

With cmd
.Connection = ConnectionDemoOLE
Where is ConnectionDemoOLE defined? Is this a global variable? If
so, then try creating a new connections instead of using an existing
variable. Generally, it is better to create a connection, use it, and
then close it rather than to open a connection and keep it around for
a long time.
Chris

Apr 17 '07 #2
Thank you.
In this case ConnectionDemoOLE is a global variable.
I tried to create a new connection (connection pooling) and close it right
after I fill a dataset (I do not wait until it access the dataset), but I
get an error "Unspecified Error" at the Open method, I think it is caused
when the maximum pool size has been reached. I am using MS Access database.
Do you know what is the maximum pool size for MS Access ?
In my other posting I posted a question, when the maximum pool size has been
reached, can I somehow loop and wait until there is an available connection
again ? Or, maybe can I increase the connection time out in MS Access
connection ?

Try
ConnectionOLE = New OleDb.OleDbConnection
OpenDBOLE = True
With ConnectionOLE
.ConnectionString = g_dbPath
.Open() --IF MAX POOL SIZE HAS BEEN REACHED, IT WILL GO
to the Catch. How can I loop and wait to open the db until a connection is
available again ?
End With
Catch ex As Exception
Try
"Chris Dunaway" <du******@gmail.comwrote in message
news:11**********************@y5g2000hsa.googlegro ups.com...
On Apr 16, 11:25 pm, "fniles" <fni...@pfmail.comwrote:
>When many people try to access the database at the same time, I get the
error "ExecuteReader requires an open and available Connection. The
connection's current state is Open, Executing." I do not use
ExecuteReader,
why the error says ExecuteReader. What does it mean ?

Internally, the Fill method uses ExecuteReader.
>When I get this error, is there a way for me to loop and wait until there
is
an open and available Connection ?
Thank you.

Dim cmd As New OleDb.OleDbCommand
Dim da As OleDb.OleDbDataAdapter
Dim ds As DataSet

With cmd
.Connection = ConnectionDemoOLE

Where is ConnectionDemoOLE defined? Is this a global variable? If
so, then try creating a new connections instead of using an existing
variable. Generally, it is better to create a connection, use it, and
then close it rather than to open a connection and keep it around for
a long time.
Chris

Apr 17 '07 #3
On Apr 17, 9:40 am, "fniles" <fni...@pfmail.comwrote:
Thank you.
In this case ConnectionDemoOLE is a global variable.
I tried to create a new connection (connection pooling) and close it right
after I fill a dataset (I do not wait until it access the dataset), but I
get an error "Unspecified Error" at the Open method, I think it is caused
when the maximum pool size has been reached. I am using MS Access database.
Do you know what is the maximum pool size for MS Access ?
In my other posting I posted a question, when the maximum pool size has been
reached, can I somehow loop and wait until there is an available connection
again ? Or, maybe can I increase the connection time out in MS Access
connection ?

Try
ConnectionOLE = New OleDb.OleDbConnection
OpenDBOLE = True
With ConnectionOLE
.ConnectionString = g_dbPath
.Open() --IF MAX POOL SIZE HAS BEEN REACHED, IT WILL GO
to the Catch. How can I loop and wait to open the db until a connection is
available again ?
End With
Catch ex As Exception
Try

"Chris Dunaway" <dunaw...@gmail.comwrote in message

news:11**********************@y5g2000hsa.googlegro ups.com...
On Apr 16, 11:25 pm, "fniles" <fni...@pfmail.comwrote:
When many people try to access the database at the same time, I get the
error "ExecuteReader requires an open and available Connection. The
connection's current state is Open, Executing." I do not use
ExecuteReader,
why the error says ExecuteReader. What does it mean ?
Internally, the Fill method uses ExecuteReader.
When I get this error, is there a way for me to loop and wait until there
is
an open and available Connection ?
Thank you.
Dim cmd As New OleDb.OleDbCommand
Dim da As OleDb.OleDbDataAdapter
Dim ds As DataSet
With cmd
.Connection = ConnectionDemoOLE
Where is ConnectionDemoOLE defined? Is this a global variable? If
so, then try creating a new connections instead of using an existing
variable. Generally, it is better to create a connection, use it, and
then close it rather than to open a connection and keep it around for
a long time.
Chris
I don't know the max pool size (I am thinking it's 110 by default),
but looking at your code your I don't see where you are disposing the
connection objects. AFAIK, If you don't dispose of them, they will sit
around idle taking up a space in the pool until the GC runs. This is
very bad as the GC will run when it wants to, meaning it might take a
while before any of the connections are released. I highly suggest you
wrap the connection objects in a Using block - that way you won't need
to wait for the GC.

Also, if you want to keep trying to open the connection you could do
something like this:

' Typed in message

Dim conn as new OleDbConnection(connString)
Using (conn)
Dim maxTries as Integer = 10
For i as Integer = 1 to maxTries
Try
conn.Open()
' The connection opened
Exit For
Catch
' The connection did not open
If i = maxTries Then
Msgbox("I give up!")
Return
Else
' Wait for a bit before trying again
Threading.Thread.Sleep(1000)
Continue For
End If
End Try
Next i
' Do whatever with the connection
End Using

I used a for loop to prevent a case where the program might get stuck
in an infinite loop, and a call to Thread.Sleep to prevent making too
many calls. You should adjust these settings to meet your needs.

Thanks,

Seth Rowe

Apr 17 '07 #4
Thank you very much

For this application, we are still using VB.Net 2003, and I do not see the
"Using" block or "Continue For". Do the following codes look OK ?

Function OpenDBDemoOLE(ByRef ConnectionDemoOLE As OleDb.OleDbConnection)
As Boolean
Dim iMaxTries As Int16 = 5

Try
ConnectionDemoOLE = New OleDb.OleDbConnection
OpenDBDemoOLE = True
With ConnectionDemoOLE
.ConnectionString = g_dbPathDemo
For iCnt As Int16 = 1 To iMaxTries
Try
.Open()
Exit For
Catch ex3 As Exception
If iCnt iMaxTries Then
OpenDBDemoOLE = False
swError = New
StreamWriter(Application.StartupPath & "\ErrorLog.txt", True)
swError.Write(Now & " OpenDBDemoOLE - iCnt = " &
iCnt & " iMaxTries = " & iMaxTries & " error = " & ex3.Message & vbCrLf)
swError.Close()
swError = Nothing
Else
Thread.Sleep(1000)
End If
End Try
Next iCnt
End With
Catch ex As Exception
OpenDBDemoOLE = false
End Try

I do close the connection like in the following codes:

Dim cmd As New OleDb.OleDbCommand
Dim da As OleDb.OleDbDataAdapter
Dim ds As DataSet
Dim ConnectionDemoOLE As OleDb.OleDbConnection
With cmd
bDBSuccess = OpenDBDemoOLE(ConnectionDemoOLE)
If bDBSuccess Then
.Connection = ConnectionDemoOLE
.CommandText = sql
Try
da = New OleDb.OleDbDataAdapter
ds = New DataSet
da.SelectCommand = cmd
da.Fill(ds)
CloseConDemoOLE(ConnectionDemoOLE)
Catch ex As Exception
end try

Sub CloseConDemoOLE(ByRef ConnectionDemoOLE As OleDb.OleDbConnection)
If Not ConnectionDemoOLE Is Nothing Then
ConnectionDemoOLE.Close()
ConnectionDemoOLE = Nothing
End If
End Sub

Function OpenDBDemoOLE(ByRef ConnectionDemoOLE As OleDb.OleDbConnection)
As Boolean
Dim iMaxTries As Int16 = 5

Try
ConnectionDemoOLE = New OleDb.OleDbConnection
OpenDBDemoOLE = True
With ConnectionDemoOLE
.ConnectionString = g_dbPathDemo
For iCnt As Int16 = 1 To iMaxTries
Try
.Open()
Exit For
Catch
If iCnt <= iMaxTries Then
Thread.Sleep(1000)
End If
End Try
Next iCnt
End With
Catch ex As Exception
OpenDBDemoOLE = false
End Try
end Function

"rowe_newsgroups" <ro********@yahoo.comwrote in message
news:11**********************@q75g2000hsh.googlegr oups.com...
On Apr 17, 9:40 am, "fniles" <fni...@pfmail.comwrote:
>Thank you.
In this case ConnectionDemoOLE is a global variable.
I tried to create a new connection (connection pooling) and close it
right
after I fill a dataset (I do not wait until it access the dataset), but I
get an error "Unspecified Error" at the Open method, I think it is caused
when the maximum pool size has been reached. I am using MS Access
database.
Do you know what is the maximum pool size for MS Access ?
In my other posting I posted a question, when the maximum pool size has
been
reached, can I somehow loop and wait until there is an available
connection
again ? Or, maybe can I increase the connection time out in MS Access
connection ?

Try
ConnectionOLE = New OleDb.OleDbConnection
OpenDBOLE = True
With ConnectionOLE
.ConnectionString = g_dbPath
.Open() --IF MAX POOL SIZE HAS BEEN REACHED, IT WILL
GO
to the Catch. How can I loop and wait to open the db until a connection
is
available again ?
End With
Catch ex As Exception
Try

"Chris Dunaway" <dunaw...@gmail.comwrote in message

news:11**********************@y5g2000hsa.googlegr oups.com...
On Apr 16, 11:25 pm, "fniles" <fni...@pfmail.comwrote:
When many people try to access the database at the same time, I get
the
error "ExecuteReader requires an open and available Connection. The
connection's current state is Open, Executing." I do not use
ExecuteReader,
why the error says ExecuteReader. What does it mean ?
Internally, the Fill method uses ExecuteReader.
>When I get this error, is there a way for me to loop and wait until
there
is
an open and available Connection ?
Thank you.
>Dim cmd As New OleDb.OleDbCommand
Dim da As OleDb.OleDbDataAdapter
Dim ds As DataSet
>With cmd
.Connection = ConnectionDemoOLE
Where is ConnectionDemoOLE defined? Is this a global variable? If
so, then try creating a new connections instead of using an existing
variable. Generally, it is better to create a connection, use it, and
then close it rather than to open a connection and keep it around for
a long time.
Chris

I don't know the max pool size (I am thinking it's 110 by default),
but looking at your code your I don't see where you are disposing the
connection objects. AFAIK, If you don't dispose of them, they will sit
around idle taking up a space in the pool until the GC runs. This is
very bad as the GC will run when it wants to, meaning it might take a
while before any of the connections are released. I highly suggest you
wrap the connection objects in a Using block - that way you won't need
to wait for the GC.

Also, if you want to keep trying to open the connection you could do
something like this:

' Typed in message

Dim conn as new OleDbConnection(connString)
Using (conn)
Dim maxTries as Integer = 10
For i as Integer = 1 to maxTries
Try
conn.Open()
' The connection opened
Exit For
Catch
' The connection did not open
If i = maxTries Then
Msgbox("I give up!")
Return
Else
' Wait for a bit before trying again
Threading.Thread.Sleep(1000)
Continue For
End If
End Try
Next i
' Do whatever with the connection
End Using

I used a for loop to prevent a case where the program might get stuck
in an infinite loop, and a call to Thread.Sleep to prevent making too
many calls. You should adjust these settings to meet your needs.

Thanks,

Seth Rowe

Apr 17 '07 #5
On Apr 17, 3:00 pm, "fniles" <fni...@pfmail.comwrote:
Thank you very much

For this application, we are still using VB.Net 2003, and I do not see the
"Using" block or "Continue For". Do the following codes look OK ?

Function OpenDBDemoOLE(ByRef ConnectionDemoOLE As OleDb.OleDbConnection)
As Boolean
Dim iMaxTries As Int16 = 5

Try
ConnectionDemoOLE = New OleDb.OleDbConnection
OpenDBDemoOLE = True
With ConnectionDemoOLE
.ConnectionString = g_dbPathDemo
For iCnt As Int16 = 1 To iMaxTries
Try
.Open()
Exit For
Catch ex3 As Exception
If iCnt iMaxTries Then
OpenDBDemoOLE = False
swError = New
StreamWriter(Application.StartupPath & "\ErrorLog.txt", True)
swError.Write(Now & " OpenDBDemoOLE - iCnt = " &
iCnt & " iMaxTries = " & iMaxTries & " error = " & ex3.Message & vbCrLf)
swError.Close()
swError = Nothing
Else
Thread.Sleep(1000)
End If
End Try
Next iCnt
End With
Catch ex As Exception
OpenDBDemoOLE = false
End Try

I do close the connection like in the following codes:

Dim cmd As New OleDb.OleDbCommand
Dim da As OleDb.OleDbDataAdapter
Dim ds As DataSet
Dim ConnectionDemoOLE As OleDb.OleDbConnection
With cmd
bDBSuccess = OpenDBDemoOLE(ConnectionDemoOLE)
If bDBSuccess Then
.Connection = ConnectionDemoOLE
.CommandText = sql
Try
da = New OleDb.OleDbDataAdapter
ds = New DataSet
da.SelectCommand = cmd
da.Fill(ds)
CloseConDemoOLE(ConnectionDemoOLE)
Catch ex As Exception
end try

Sub CloseConDemoOLE(ByRef ConnectionDemoOLE As OleDb.OleDbConnection)
If Not ConnectionDemoOLE Is Nothing Then
ConnectionDemoOLE.Close()
ConnectionDemoOLE = Nothing
End If
End Sub

Function OpenDBDemoOLE(ByRef ConnectionDemoOLE As OleDb.OleDbConnection)
As Boolean
Dim iMaxTries As Int16 = 5

Try
ConnectionDemoOLE = New OleDb.OleDbConnection
OpenDBDemoOLE = True
With ConnectionDemoOLE
.ConnectionString = g_dbPathDemo
For iCnt As Int16 = 1 To iMaxTries
Try
.Open()
Exit For
Catch
If iCnt <= iMaxTries Then
Thread.Sleep(1000)
End If
End Try
Next iCnt
End With
Catch ex As Exception
OpenDBDemoOLE = false
End Try
end Function

"rowe_newsgroups" <rowe_em...@yahoo.comwrote in message

news:11**********************@q75g2000hsh.googlegr oups.com...
On Apr 17, 9:40 am, "fniles" <fni...@pfmail.comwrote:
Thank you.
In this case ConnectionDemoOLE is a global variable.
I tried to create a new connection (connection pooling) and close it
right
after I fill a dataset (I do not wait until it access the dataset), but I
get an error "Unspecified Error" at the Open method, I think it is caused
when the maximum pool size has been reached. I am using MS Access
database.
Do you know what is the maximum pool size for MS Access ?
In my other posting I posted a question, when the maximum pool size has
been
reached, can I somehow loop and wait until there is an available
connection
again ? Or, maybe can I increase the connection time out in MS Access
connection ?
Try
ConnectionOLE = New OleDb.OleDbConnection
OpenDBOLE = True
With ConnectionOLE
.ConnectionString = g_dbPath
.Open() --IF MAX POOL SIZE HAS BEEN REACHED, IT WILL
GO
to the Catch. How can I loop and wait to open the db until a connection
is
available again ?
End With
Catch ex As Exception
Try
"Chris Dunaway" <dunaw...@gmail.comwrote in message
>news:11**********************@y5g2000hsa.googlegr oups.com...
On Apr 16, 11:25 pm, "fniles" <fni...@pfmail.comwrote:
When many people try to access the database at the same time, I get
the
error "ExecuteReader requires an open and available Connection. The
connection's current state is Open, Executing." I do not use
ExecuteReader,
why the error says ExecuteReader. What does it mean ?
Internally, the Fill method uses ExecuteReader.
When I get this error, is there a way for me to loop and wait until
there
is
an open and available Connection ?
Thank you.
Dim cmd As New OleDb.OleDbCommand
Dim da As OleDb.OleDbDataAdapter
Dim ds As DataSet
With cmd
.Connection = ConnectionDemoOLE
Where is ConnectionDemoOLE defined? Is this a global variable? If
so, then try creating a new connections instead of using an existing
variable. Generally, it is better to create a connection, use it, and
then close it rather than to open a connection and keep it around for
a long time.
Chris
I don't know the max pool size (I am thinking it's 110 by default),
but looking at your code your I don't see where you are disposing the
connection objects. AFAIK, If you don't dispose of them, they will sit
around idle taking up a space in the pool until the GC runs. This is
very bad as the GC will run when it wants to, meaning it might take a
while before any of the connections are released. I highly suggest you
wrap the connection objects in a Using block - that way you won't need
to wait for the GC.
Also, if you want to keep trying to open the connection you could do
something like this:
' Typed in message
Dim conn as new OleDbConnection(connString)
Using (conn)
Dim maxTries as Integer = 10
For i as Integer = 1 to maxTries
Try
conn.Open()
' The connection opened
Exit For
Catch
' The connection did not open
If i = maxTries Then
Msgbox("I give up!")
Return
Else
' Wait for a bit before trying again
Threading.Thread.Sleep(1000)
Continue For
End If
End Try
Next i
' Do whatever with the connection
End Using
I used a for loop to prevent a case where the program might get stuck
in an infinite loop, and a call to Thread.Sleep to prevent making too
many calls. You should adjust these settings to meet your needs.
Thanks,
Seth Rowe
I didn't have time to read through your code, but I'll see if I can
get to it later. As for your other questions...
For this application, we are still using VB.Net 2003, and I do not see the
"Using" block or "Continue For"
You can replace Using with a try...finally pair:

Dim conn as new OleDbConnection(connString)
try
conn.Open()
finally
conn.Dispose()
end try

And you should be able to ignore the continue for - it will continue
automatically.

Thanks,

Seth Rowe

Apr 17 '07 #6
basically; MS conned us all into buying .net 2.0 and SQL 2005 by
including 'MARS'

but then you STILL can't open two things on the same connection; like
you used to be able to in ADO Classic

..NET is crap l choose to go back to ADO classic


On Apr 16, 9:25 pm, "fniles" <fni...@pfmail.comwrote:
I am using VB.Net 2003 and MS Access (connecting using OleDBConnection).
I read using DataAdapter and DataSet, not DataReader.
When many people try to access the database at the same time, I get the
error "ExecuteReader requires an open and available Connection. The
connection's current state is Open, Executing." I do not use ExecuteReader,
why the error says ExecuteReader. What does it mean ?
When I get this error, is there a way for me to loop and wait until there is
an open and available Connection ?
Thank you.

Dim cmd As New OleDb.OleDbCommand
Dim da As OleDb.OleDbDataAdapter
Dim ds As DataSet

With cmd
.Connection = ConnectionDemoOLE
.CommandText = sql
Try
da = New OleDb.OleDbDataAdapter
ds = New DataSet
da.SelectCommand = cmd
da.Fill(ds)
Catch ex As Exception
msgbox ex.message '-error "ExecuteReader requires an open and
available Connection. The connection's current state is Open, Executing."
end try

Apr 18 '07 #7
I disagree with your 'better'

it is 'more verbose' yes you are correct

better-- NO

not having to rewrite everything would be _BETTER_

On Apr 17, 6:17 am, Chris Dunaway <dunaw...@gmail.comwrote:
On Apr 16, 11:25 pm, "fniles" <fni...@pfmail.comwrote:
When many people try to access the database at the same time, I get the
error "ExecuteReader requires an open and available Connection. The
connection's current state is Open, Executing." I do not use ExecuteReader,
why the error says ExecuteReader. What does it mean ?

Internally, the Fill method uses ExecuteReader.
When I get this error, is there a way for me to loop and wait until there is
an open and available Connection ?
Thank you.
Dim cmd As New OleDb.OleDbCommand
Dim da As OleDb.OleDbDataAdapter
Dim ds As DataSet
With cmd
.Connection = ConnectionDemoOLE

Where is ConnectionDemoOLE defined? Is this a global variable? If
so, then try creating a new connections instead of using an existing
variable. Generally, it is better to create a connection, use it, and
then close it rather than to open a connection and keep it around for
a long time.

Chris

Apr 18 '07 #8

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: ST | last post by:
This is my other error when I click on Immunoflourescence. I believe this is related to the other error I just posted (Input string was not in a correct format.) Please let me know if you have...
0
by: Zürcher See | last post by:
In an application I had the following error: ExecuteReader requires an open and available Connection. The connection's current state is Open, Executing. ...
6
by: karim | last post by:
I have an asp.net page that stopped running properly giving the error below. The app uses a SQL Server 2000 on another server. Enterprise Manager and Query analyzer on the web server can connect to...
3
by: DraguVaso | last post by:
Hi, In a VB.NET-application I use this to open a Database Connection: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim strConn...
4
by: mescano | last post by:
I am currently implementing a singleton pattern for accessing a database. Is it advisable to close the connection to the database at all -- thus leaving it open or should it be closed. If closed,...
6
by: Mike | last post by:
We are intermitantly receiving this error on our website. ExecuteReader requires an open and available Connection. The connection's current state is connecting. Following is the code from the Load...
2
by: mwatcher | last post by:
Hi all, I am using .net 2.0. How can I get the current state of the mouse button (e.g.. Mouse Button Right is pressed). I'm not in a mouse event handler routine. What I wanna do is to check if...
2
by: ajain1 | last post by:
Folks, I want to refresh my child window after a particular interval of time, its working with the following code, but after getting refresh its always forward me on first URL not on the current...
0
by: Manesh Pawar | last post by:
Hello, I m getting an error "System.InvalidOperationException - Executereader requires an open and available connection" I have Open an Connection, but still it throughs an Error. But it...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.