Thanks for your replies. As I see it now, there are several options.
I think this kind of info should be explained in a sticky post; I don't expect replies to every question here.
(1) What kind of database?
"SQL Server Compact 3.5 database files (.sdf), SQL Server and SQL Server Express database files (.mdf), and Microsoft Access
database files (.mdb) are the currently supported local database files."
The preferred local database for client applications is SQL Server Compact 3.5.
Local Data Overview
Comment: I have VB NET applications that use Microsoft Excel but it's not considered a database.
Question: Why is Compact 3.5 the preferred database? How does it compare with regular SQL Server?
(2) Will the database be on this computer (local) or another computer (remote)?
Local Data Overview, for visual Studio 2010:
"The term local data refers to having a connection between your application and a database file on the local computer (as opposed
to having a connection to a database on a remote server)."
Local Data Overview
Note: My application does not access a database on a remote server; therefore it is a local database.
(3) Where will the database reside in my local computer?
How to: Manage Local Data Files in Your Project, for Visual Studio 2010:
"A local database file can be included as a file in a project. The first time you connect your application to a local database file,
you can choose between creating a copy of the database in your project or connecting to the existing database file in its current
location."
How to: Manage Local Data Files in Your Project
So the options are:
a. can be included as a file in a project
b. the existing database file in its current location (possibly in SQL\DATA?)
Note, it does not say: "You should absolutely not put the data file in the SQL Server data folder."
In my case, I learned SQL by using the SQL Server Management Studio, which saves data files to its DATA folder.
When I started my VB application, I did not "put the data file in the SQL Server data folder"; it was already there!
Note 2: The article explains (a) a file copied to the project or (b) a file that is in another location.
It does not discuss (c) a SQL file generated within the project.
In that case when a new data source is made, the question "Do you want to copy this file?" is not presented.
The SQL files are already in the project folder.
Another option for a local database location is the SQL Server as an attached database.
Note: The only info I have is what you said; that the connection string uses "Initial Catalog".
When I select the database, I get a message "You don't have permission to open the database".
I wonder if this option is available for Express versions.
(4) If the database is integrated as part of the project, what is the "Copy to Output Directory" property?
>Copy if newer (default for .sdf files)
>Copy always (default for .mdf and .mdb files)
>Do not copy
Note: I think there should be more explanation to see the effects of each option.
(5) Are there options for making database connections in the program, instead of the normal way of "Adding data sources"?
Note: We design most of the forms in the IDE easily, but make some changes in code.
Where can we find an overview of connecting with databases in code?
(6) The Linq option to implement SQL.
SQL was "impossible" for me before learning about this option.