473,765 Members | 2,001 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

is it possible to connect to db2/390 without having db2 connect?

aka
Hi

I have a DB2 v8.1 on AIX and DB2 Connect EE on Solaris wich is connected to
OS/390 DB2 subsystems via APPC / SNA. I have cataloged the DB2 Connect
instance as tcpip node and then the Host DB cataloged on that node...this
works from v7.2 Fixpack 11 clients and servers, but with v8.1 server I get
SQL1334N.
Does anyone has an idea?

Thanks
aka
Nov 12 '05
30 7442
aka
> So it looks like you are trying to connect a V8 client over TCP/IP to a
V7 DB2 Connect EE, which in turn, uses SNA to talk to DB2 V6 on 390.

Are there all 32-bit environments?

You ought to open a PMR with IBM for this. I'm not sure if this is
supported. Unless someone else has a suggestion.

Larry Edelstein


Yes Larry, all are 32 bit and that's exactly what I'm trying to do :) it
seems to me a good first try in walking the way towards v8 (remember, when I
only use v7 client in this config, all works fine)...now I understand that
there is some potential difficulties in this configuration, as Blair stated
earlier, so my next step would be to get the gateway upgraded to v8, wich in
turn introduces the need to change the environment from APPC/SNA to CPIC (if
I got this right) also on the gateway machine, and I don't know, if that
would cause more changes on the mainframe.

I would be glad hearing from someone who managed connection to DB2/390 in
such a multi tier environment from v8 as client and how this could be done.

Thx
aka

by the way...the type 4 connection requires TCP/IP on the mainframe, is that
right?
Nov 12 '05 #21
IBM is so bad and proprietary. Only M$ is worse!
It took 1 (one) year for me to obtain working JDBC connection directly to
mainframe DB2 (without DB2 Connect).
I will not mention my endless and helpless searches for it. IBM made everything
to hide it as deep as possible...

OK. Here is result.
I installed latest DB2 Connect for Sun Solaris (that's another story), then
installed latest patch and (even it doesn't work) I found working JDBC type 4
driver in installed directory.
Additional brainstorm efforts gave me suggestion to use another jar files from
this instalation as licenses.
And license for mainframe is in the db2jcc_license_ cisuz.jar

So, when you do all this work it would be pretty easy! Write DA.java:
then compile:
javac DA.java
and run it:
java -classpath .:db2jcc.jar:db 2jcc_license_ci suz.jar DA

That's all. And of course you need TCP/IP on mainframe. But these parameters are
the same for DB2 Connect and you can ask your DBAs. For me they are:
("jdbc:db2://big.mainframe.n et:2336/TEST_DBT1","use r","password ");

Unfortunately you still need DB2 Connect but for licesnse purposes only. It is
not necessary to install it or use it when you have these jar files and
licenses.

Alex Kizub.

aka wrote:
So it looks like you are trying to connect a V8 client over TCP/IP to a
V7 DB2 Connect EE, which in turn, uses SNA to talk to DB2 V6 on 390.

Are there all 32-bit environments?

You ought to open a PMR with IBM for this. I'm not sure if this is
supported. Unless someone else has a suggestion.

Larry Edelstein


Yes Larry, all are 32 bit and that's exactly what I'm trying to do :) it
seems to me a good first try in walking the way towards v8 (remember, when I
only use v7 client in this config, all works fine)...now I understand that
there is some potential difficulties in this configuration, as Blair stated
earlier, so my next step would be to get the gateway upgraded to v8, wich in
turn introduces the need to change the environment from APPC/SNA to CPIC (if
I got this right) also on the gateway machine, and I don't know, if that
would cause more changes on the mainframe.

I would be glad hearing from someone who managed connection to DB2/390 in
such a multi tier environment from v8 as client and how this could be done.

Thx
aka

by the way...the type 4 connection requires TCP/IP on the mainframe, is that
right?


Nov 12 '05 #22
IBM is so bad and proprietary. Only M$ is worse!
It took 1 (one) year for me to obtain working JDBC connection directly to
mainframe DB2 (without DB2 Connect).
I will not mention my endless and helpless searches for it. IBM made everything
to hide it as deep as possible...

OK. Here is result.
I installed latest DB2 Connect for Sun Solaris (that's another story), then
installed latest patch and (even it doesn't work) I found working JDBC type 4
driver in installed directory.
Additional brainstorm efforts gave me suggestion to use another jar files from
this instalation as licenses.
And license for mainframe is in the db2jcc_license_ cisuz.jar

So, when you do all this work it would be pretty easy! Write DA.java:
then compile:
javac DA.java
and run it:
java -classpath .:db2jcc.jar:db 2jcc_license_ci suz.jar DA

That's all. And of course you need TCP/IP on mainframe. But these parameters are
the same for DB2 Connect and you can ask your DBAs. For me they are:
("jdbc:db2://big.mainframe.n et:2336/TEST_DBT1","use r","password ");

Unfortunately you still need DB2 Connect but for licesnse purposes only. It is
not necessary to install it or use it when you have these jar files and
licenses.

Alex Kizub.

aka wrote:
So it looks like you are trying to connect a V8 client over TCP/IP to a
V7 DB2 Connect EE, which in turn, uses SNA to talk to DB2 V6 on 390.

Are there all 32-bit environments?

You ought to open a PMR with IBM for this. I'm not sure if this is
supported. Unless someone else has a suggestion.

Larry Edelstein


Yes Larry, all are 32 bit and that's exactly what I'm trying to do :) it
seems to me a good first try in walking the way towards v8 (remember, when I
only use v7 client in this config, all works fine)...now I understand that
there is some potential difficulties in this configuration, as Blair stated
earlier, so my next step would be to get the gateway upgraded to v8, wich in
turn introduces the need to change the environment from APPC/SNA to CPIC (if
I got this right) also on the gateway machine, and I don't know, if that
would cause more changes on the mainframe.

I would be glad hearing from someone who managed connection to DB2/390 in
such a multi tier environment from v8 as client and how this could be done.

Thx
aka

by the way...the type 4 connection requires TCP/IP on the mainframe, is that
right?


Nov 12 '05 #23
Alex Kizub wrote:
IBM is so bad and proprietary. Only M$ is worse!
It took 1 (one) year for me to obtain working JDBC connection directly to
mainframe DB2 (without DB2 Connect).
I will not mention my endless and helpless searches for it. IBM made everything
to hide it as deep as possible...


I am confused - did it take you one year to *find* this information in
online documentation available at
http://publib.boulder.ibm.com/infoce...help/index.jsp,
or did it take you one year to *comprehend* it:
"Setting Up the UNIX Java Environment

To run JDBC and SQLJ programs on UNIX with DB2 JDBC support, commands to
update your Java environment are included in the database manager files
db2profile and db2cshrc. When a DB2 instance is created, .bashrc,
..profile, and/or .cshrc are modified so that:

1. THREADS_FLAG is set to "native". (on HP-UX, Linux and Solaris only)
2. CLASSPATH includes:
* "." (the current directory)
* the file sqllib/java/db2java.zip
* the file sqllib/java/db2jcc.jar
* the file sqllib/java/db2jcc_license_ cu.jar

Note:
db2jcc_license_ cisuz.jar is also included in the CLASSPATH for DB2
Connect Personal Edition, DB2 Connect Enterprise Edition, and DB2 ESE.
This provides additional connectivity to DB2 for z/OS and OS/390, DB2
for AS/400 and iSeries, and DB2 for VSE & VM."
Jan M. Nelken
Nov 12 '05 #24
Alex Kizub wrote:
IBM is so bad and proprietary. Only M$ is worse!
It took 1 (one) year for me to obtain working JDBC connection directly to
mainframe DB2 (without DB2 Connect).
I will not mention my endless and helpless searches for it. IBM made everything
to hide it as deep as possible...


I am confused - did it take you one year to *find* this information in
online documentation available at
http://publib.boulder.ibm.com/infoce...help/index.jsp,
or did it take you one year to *comprehend* it:
"Setting Up the UNIX Java Environment

To run JDBC and SQLJ programs on UNIX with DB2 JDBC support, commands to
update your Java environment are included in the database manager files
db2profile and db2cshrc. When a DB2 instance is created, .bashrc,
..profile, and/or .cshrc are modified so that:

1. THREADS_FLAG is set to "native". (on HP-UX, Linux and Solaris only)
2. CLASSPATH includes:
* "." (the current directory)
* the file sqllib/java/db2java.zip
* the file sqllib/java/db2jcc.jar
* the file sqllib/java/db2jcc_license_ cu.jar

Note:
db2jcc_license_ cisuz.jar is also included in the CLASSPATH for DB2
Connect Personal Edition, DB2 Connect Enterprise Edition, and DB2 ESE.
This provides additional connectivity to DB2 for z/OS and OS/390, DB2
for AS/400 and iSeries, and DB2 for VSE & VM."
Jan M. Nelken
Nov 12 '05 #25
"Jan M. Nelken" <jn*****@ca.ibm .com> wrote in message news:<c7******* ***@hanover.tor olab.ibm.com>.. .
I am confused - did it take you one year to *find* this information in
online documentation available at
http://publib.boulder.ibm.com/infoce...help/index.jsp,
or did it take you one year to *comprehend* it:

Jan: Thanks for url.
But it really took one year to get *working* example.
Probably it is easy for IBM guys to find such information (with all
tranings or direct phone calls) but it's really hard for such ordinary
people like me who work with Java only 7 years and have JDBC
experience for 7 eyars too.

With such fragmented documentaion what IBM provides only guys who
wrote it can find necessary parts and unite them to working peaces.
For example, I ran application and had:
Connection failed DB2 SQL error: SQLCODE: -1334, SQLSTATE: ,
SQLERRMC: null
Would you like to send me url which explains this code?
It will be really appreciated. Because in one year on my researches I
didn't find it.

Actually I was very proud when I found the way. I can tell you that
I'm first in our 30,000 people company who did it. Of course not even
minority of my company are Java programmers but you can imagine level.

So, I was happy... Until I had real work. Here I'm not happy at all.
In comparison with Oracle this particular JDBC driver matches year
1998. No more. And speed is awesome! For my task it's 30-50% of
appropiate Oracle on UNIX.

But, of course, we have to support legacy systems and work with what
we have.
And this particular driver helps a lot. When works...
And I'm really happy that I have at leats this one and don't have tpo
write whole application on COBOL.

Thanks again,
Alex Kizub.
Nov 12 '05 #26
"Jan M. Nelken" <jn*****@ca.ibm .com> wrote in message news:<c7******* ***@hanover.tor olab.ibm.com>.. .
I am confused - did it take you one year to *find* this information in
online documentation available at
http://publib.boulder.ibm.com/infoce...help/index.jsp,
or did it take you one year to *comprehend* it:

Jan: Thanks for url.
But it really took one year to get *working* example.
Probably it is easy for IBM guys to find such information (with all
tranings or direct phone calls) but it's really hard for such ordinary
people like me who work with Java only 7 years and have JDBC
experience for 7 eyars too.

With such fragmented documentaion what IBM provides only guys who
wrote it can find necessary parts and unite them to working peaces.
For example, I ran application and had:
Connection failed DB2 SQL error: SQLCODE: -1334, SQLSTATE: ,
SQLERRMC: null
Would you like to send me url which explains this code?
It will be really appreciated. Because in one year on my researches I
didn't find it.

Actually I was very proud when I found the way. I can tell you that
I'm first in our 30,000 people company who did it. Of course not even
minority of my company are Java programmers but you can imagine level.

So, I was happy... Until I had real work. Here I'm not happy at all.
In comparison with Oracle this particular JDBC driver matches year
1998. No more. And speed is awesome! For my task it's 30-50% of
appropiate Oracle on UNIX.

But, of course, we have to support legacy systems and work with what
we have.
And this particular driver helps a lot. When works...
And I'm really happy that I have at leats this one and don't have tpo
write whole application on COBOL.

Thanks again,
Alex Kizub.
Nov 12 '05 #27
aka
Hi Alex,

good talking...I support your opinion of IBM information hiding when it
comes to get into contact with mainframe systems, also I'm very thankful for
your hints on getting a JDBC working connection...I will try it out.

So the question seems to be answered, that indeed we need DB2 Connect to get
into contact with DB2/390, and even if using SNA protocol...but then I found
this in the publib.boulder Information center:

(...) Other features of DB2 UDB Enterprise Server Edition include:
a.. A data warehouse server and related components.
b.. DB2 Connect(TM) functionality for accessing data stored on midrange
and mainframe database systems such as DB2 for iSeries(TM) or DB2 UDB for
z/OS(TM) and OS/390. DB2 UDB Enterprise Server Edition provides support for
both local and remote DB2 clients.
Use of the DB2 Connect component is limited to five (5) registered users
per server. If additional users are required, a separate DB2 Connect program
must be acquired. Contact your IBM sales representative for more
information.

"Alex Kizub" <ak****@yahoo.c om> schrieb im Newsbeitrag
news:9d******** *************** **@posting.goog le.com...
"Jan M. Nelken" <jn*****@ca.ibm .com> wrote in message

news:<c7******* ***@hanover.tor olab.ibm.com>.. .
I am confused - did it take you one year to *find* this information in
online documentation available at
http://publib.boulder.ibm.com/infoce...help/index.jsp,
or did it take you one year to *comprehend* it:

Jan: Thanks for url.
But it really took one year to get *working* example.
Probably it is easy for IBM guys to find such information (with all
tranings or direct phone calls) but it's really hard for such ordinary
people like me who work with Java only 7 years and have JDBC
experience for 7 eyars too.

With such fragmented documentaion what IBM provides only guys who
wrote it can find necessary parts and unite them to working peaces.
For example, I ran application and had:
Connection failed DB2 SQL error: SQLCODE: -1334, SQLSTATE: ,
SQLERRMC: null
Would you like to send me url which explains this code?
It will be really appreciated. Because in one year on my researches I
didn't find it.

Actually I was very proud when I found the way. I can tell you that
I'm first in our 30,000 people company who did it. Of course not even
minority of my company are Java programmers but you can imagine level.

So, I was happy... Until I had real work. Here I'm not happy at all.
In comparison with Oracle this particular JDBC driver matches year
1998. No more. And speed is awesome! For my task it's 30-50% of
appropiate Oracle on UNIX.

But, of course, we have to support legacy systems and work with what
we have.
And this particular driver helps a lot. When works...
And I'm really happy that I have at leats this one and don't have tpo
write whole application on COBOL.

Thanks again,
Alex Kizub.

Nov 12 '05 #28
aka
Hi Alex,

good talking...I support your opinion of IBM information hiding when it
comes to get into contact with mainframe systems, also I'm very thankful for
your hints on getting a JDBC working connection...I will try it out.

So the question seems to be answered, that indeed we need DB2 Connect to get
into contact with DB2/390, and even if using SNA protocol...but then I found
this in the publib.boulder Information center:

(...) Other features of DB2 UDB Enterprise Server Edition include:
a.. A data warehouse server and related components.
b.. DB2 Connect(TM) functionality for accessing data stored on midrange
and mainframe database systems such as DB2 for iSeries(TM) or DB2 UDB for
z/OS(TM) and OS/390. DB2 UDB Enterprise Server Edition provides support for
both local and remote DB2 clients.
Use of the DB2 Connect component is limited to five (5) registered users
per server. If additional users are required, a separate DB2 Connect program
must be acquired. Contact your IBM sales representative for more
information.

"Alex Kizub" <ak****@yahoo.c om> schrieb im Newsbeitrag
news:9d******** *************** **@posting.goog le.com...
"Jan M. Nelken" <jn*****@ca.ibm .com> wrote in message

news:<c7******* ***@hanover.tor olab.ibm.com>.. .
I am confused - did it take you one year to *find* this information in
online documentation available at
http://publib.boulder.ibm.com/infoce...help/index.jsp,
or did it take you one year to *comprehend* it:

Jan: Thanks for url.
But it really took one year to get *working* example.
Probably it is easy for IBM guys to find such information (with all
tranings or direct phone calls) but it's really hard for such ordinary
people like me who work with Java only 7 years and have JDBC
experience for 7 eyars too.

With such fragmented documentaion what IBM provides only guys who
wrote it can find necessary parts and unite them to working peaces.
For example, I ran application and had:
Connection failed DB2 SQL error: SQLCODE: -1334, SQLSTATE: ,
SQLERRMC: null
Would you like to send me url which explains this code?
It will be really appreciated. Because in one year on my researches I
didn't find it.

Actually I was very proud when I found the way. I can tell you that
I'm first in our 30,000 people company who did it. Of course not even
minority of my company are Java programmers but you can imagine level.

So, I was happy... Until I had real work. Here I'm not happy at all.
In comparison with Oracle this particular JDBC driver matches year
1998. No more. And speed is awesome! For my task it's 30-50% of
appropiate Oracle on UNIX.

But, of course, we have to support legacy systems and work with what
we have.
And this particular driver helps a lot. When works...
And I'm really happy that I have at leats this one and don't have tpo
write whole application on COBOL.

Thanks again,
Alex Kizub.

Nov 12 '05 #29
Alex Kizub wrote:
With such fragmented documentaion what IBM provides only guys who
wrote it can find necessary parts and unite them to working peaces.
The reaon I included URL was that this should be your starting point in
any research. This link points to *current* documentation available.
When there is an update - due to FixPack nn upgrade, the quickest way to
see updated documentation would be to use link I gave you.

My main point in slightly provoking answer was to encourage you to start
your research from that link. There are other people - Xixi comes to
mind - who would start asking questions here *before* consulting
available documentation.
For example, I ran application and had:
Connection failed DB2 SQL error: SQLCODE: -1334, SQLSTATE: ,
SQLERRMC: null
Would you like to send me url which explains this code?
It will be really appreciated. Because in one year on my researches I
didn't find it.


Same location:

Open Reference->Messages->SQL->SQL1300-SQL13199 -> SQL1334:\

SQL1334N The database server cannot be used to route a remote request
to a second database server in this configuration.

Explanation: An attempt was made to route a request through a database
server node using an unsupported combination of client and target
database server. Either a client or target database prior to release
version 2 was used or an attempt was made to route the request from a
DRDA client to a DRDA target database. The request must be routed
directly from the client to the node on which the target database is
running.

User Response: Uncatalog the database at the client machine and then
catalog the database specifying the node on which the database actually
resides. Ensure that the node is also cataloged.
Same result can be achieved using db2 ? sql1334 from DB2 command window.

Now - entirely different question would be - whether explanation given
was helpful in resolving this issue. Only you can answer that. My guess
is that you figured out your cataloguing issues all by yourself.

PS. I switched back to "hidding my e-mail" - since you already got my
e-mail address. I am getting enough SPAM and junk e-mail already.

Jan M. Nelken
Nov 12 '05 #30

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

Similar topics

1
3327
by: Marc | last post by:
Hello, Newbie here..... Searching and working this for a week now. We too are having the same problems. Using MySql 4.0.14 and there are "no problems" at all.
1
2530
by: Claus van de Vlierd | last post by:
Hello , a) in the following script (under RedHat AS3 with PHP 4.3.2 ) I make a "DB::connect" to an existing "mysql" database named "docu_files_of_cvdv" . The strange thing is : it works -- even if I give as protocol the string "nonsenseprotocol" (instead of "unix" or "tcp") and as Hostname "nonsensehostname" ... !!
4
2962
by: Mike | last post by:
Related to another topic I just posted, I wanted to discuss ways to optimize the validation of very large (>100MB) XML documents. First, I have no idea if something like this already exists; it may even be the typical implementation for all I know. At any rate, it occurs to me that the set of business rules that need to be validated against an XML document represent a limited set of nodes at any given time (while parsing through the...
5
15096
by: D. Dante Lorenso | last post by:
I have a simple table that I'd like to query to pull out a heirarchy from a tree relationship. What is the best way to do this without a 'CONNECT BY' clause like Oracle has? Example mytable +----------+-----------+ | child_id | parent_id |
0
409
by: aka | last post by:
Hi I have a DB2 v8.1 on AIX and DB2 Connect EE on Solaris wich is connected to OS/390 DB2 subsystems via APPC / SNA. I have cataloged the DB2 Connect instance as tcpip node and then the Host DB cataloged on that node...this works from v7.2 Fixpack 11 clients and servers, but with v8.1 server I get SQL1334N. Does anyone has an idea? Thanks
14
7042
by: Marcus | last post by:
I have a function that simply returns TRUE if it can connect to a particular Sql Server 2005 express, or FALSE if it cannot. I am getting some strange error codes returned when the computer that sql server resides on is not reachable. The error is different depending on the connection string that I use. If I use the following connection string: "server=192.1.1.1; Initial Catalog=master; uid=The_User; password=The_Password; Connect...
0
2069
by: jordo | last post by:
I have an asp.Net app that connects to the WSS 2.0 list web service. I'm having issues with IIS and .Net configurations and hope that someone can help me. My ideal configuration is: asp.net: Authentication Mode=Windows Identity Impersonate=False IIS Allow Anonymous Disabled Integrated Windows Authentication Enabled Application Pool Identity = domain account with access to WSS site app
2
5329
by: daft | last post by:
Hi guys Following on from an issue a couple of years back, now archived: http://www.thescripts.com/forum/thread208561-tabledef.connect.html I'm having the same problems. I can update the Querydef.connect property programmatically without any problems, however if I try to update the Tabledef.connect property it won't do it, even though it runs through the code successfully.
2
5823
by: Flash08 | last post by:
Hi all, I'm having some trouble with connecting to SQL server instance lately without adding a port number. I used to be able to always connect to instance without having to input SQLSERVER,portnumber. However now this is not the case. I doing this through an ADO connection object, and creating the connection string. Does anyone know if there was a recent Microsoft update or patch that would've cause this to stop allowing me to...
0
9568
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, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9398
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 effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10160
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, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
1
9951
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 Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9832
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
6649
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 then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5275
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
1
3924
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
2805
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

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.