static bool IsValidDatabaseName (string database)
{
if ( database == null || database.Trim().Length == 0 || database.Length > 128)
return false ;
if (database[0] == '"' && database[database.Length] == '"')
database = database.Substring (1, database.Length - 2);
else if (Char.IsDigit (database[0]))
return false;
if (database[0] == '_')
return false;
foreach (char c in database.Substring (1, database.Length - 1))
if (!Char.IsLetterOrDigit (c) && c != '_' && c != '-')
return false;
return true;
}