Understanding computer networking basics is pretty important, I suggest brushing up on your computer networking knowledge as it seems you may be a bit rusty in this area. Here are some tutorials on installing SQL Server 2005, might help you to understand this better once you have gone through the complete installation.
http://www.youtube.com/watch?v=5Yq75lkXtL4
http://articles.techrepublic.com.com/5100-10878_11-6102265.html
And here is a description of the parts of that connection string for you to understand:
Data Source - In visual basic you will see the words DataSource in a lot of controls and components. In this case, the datasource is referring to the Server/Computer that the data resides on. In most cases this is an IP address, but as connectionstrings.com stated, SQLServer 2005 Express would like you to stick the computer name of the computer that has SQL Server installed in for DataSource
Initial Catalog - This tells SQL Server which Database you are attempting to access. A SQL Server install can have multiple databases, each of which have their own tables and data. Each database can be set up with varying settings and parameters and have specific user access configured. For This value you will specify the Database in which you want to connect to.
User Id & Password - As I stated under Initial Catalog, each database can have varying settings and users configured to use it. You must specify a username and password of a user who has permission to access that database. This is NOT a windows username, it is a username and password configured in your SQL Server installation.
My question is that for the server name- Is it the name of the computer containing the database and the path to my DB? Simply put, no... The computer name is just that, the computer name. (XP) Rightclick mycomputer, select Properties. Move to the Computer Name tab.
Is there any code to determine the server name or IP? Set the SQL Server computer up to have a static IP address, so it doesn't change. Then you can put the connection information into a flat file (text file) that is loaded by the application to connect to the database. That way if the database name, or server IP, or user info changes, you can change that text file and be done with it rather than recompiling and redistributing your code. If you are making an application you want to sell to multiple customers, you need the information to be very "Dynamic" so "hardcoding" connection values is something you want to avoid at all costs.
Is the server name the name of the sql database I created alone? The server name is either the Computer Name or the IP Address of that computer that SQL Server 2005 Express was installed on. It sounds like you want to use Computer Name with SQL Server 2005 Express.
Do I create a server name for my the data base which will be used by my app? Once you have installed SQL Server, you will need to create a database and name it. That will be the "Initial Catalog" or DatabaseName.
Will the server name(or IP) be provided by the application user during installation? Probably not unless you specify this. How you provide the information to your application is entirely up to you as the developer, and very dependent on how you go about things. If it is directly programmed in, you have to recompile and redistribute the application to change it. If it is in a text file somewhere, any random user can open that file and see the connection info of that database, and a malicious/knowledgeable user could do bad bad things then... You could encrypt the data or hash the data that is stuck into that file though and make it much harder/nearly impossibly to break. But I digress...
Hope this helps,
Mr. Campbell
firesickle.com