You can use xcopy deployment with SQL Server Express databases. From the link mentioned:
To make your application work with the Xcopy deployment feature of SQL
  Server Express, you must make sure that the connection string you use
  in your application contains the appropriate parameters:
Use the data source parameter, but change the computer name to either
  a period (.) or (local). You must also specify the name of the
  instance, unless you are sure that SQL Server Express will always be
  installed on an unnamed instance.
Use the initial catalog or database parameter, but do not set the
  parameter to a value.
Add the AttachDBFileName parameter and set it to the name and path of
  the .mdf file. Attachdbfilename is a SqlClient connection string
  option that enables attaching databases at runtime and autogenerates
  database name. The DataDirectory keyword lets you specify the relative
  path of a database file. Attachdbfilenamealso helps with database
  portability. For more information about Attachdbfilename, see the
  Visual Studio 2005 documentation.
The following connection string will attach the MyDb.mdf database
  file, which is in the same folder as the application executable, to
  the SQL Server Express instance running on the local computer.
@"Data Source='.\SQLExpress'; Initial Catalog=; Integrated 
Security=true; AttachDBFileName='" |DataDirectory| + 
@"\MyDb.mdf'"