Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
[C# 2005] Stranissima anomalia creazione db
lunedì 21 maggio 2007 - 15.44
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Shadow
Profilo
| Junior Member
194
messaggi | Data Invio:
lun 21 mag 2007 - 15:44
Carissimi,
sicuramente sto sbagliando io qualcosa.
Voglio fare in modo che al primo avvio la mia win app in C# 2005 crei il database, se non già presente. Allora ho creato il mio file script di creazione (che funziona, tant'è che eseguendolo da SSMS si crea tutto, database e tutti gli oggetti, tabelle ecc). Se però lo faccio eseguire dal mio software - il cui frammento di codice che lo crea vi posto sotto - sentite cosa accade: si crea il database ma senza oggetti dentro. La cosa stranissima è che 'esplorando' SSMS ho scoperto che gli oggetti si creano nel database Master!!!! Qualcuno di voi sa spiegarmi l'arcanissimo? Mi pare davvero strano. L'unica certezza è che sicuramente avrò commesso io un errore. Grazie a tutti e buna serata,
Shadow
CODICE
//Questa classe fa semplicemente eseguire un generico comando sql
public static int SqlComEx(string cnSqlComEx, string cmdSqlComEx, CommandType typSqlComEx, SqlParameter[] parSqlComEx)
{
int retSqlComEx = 0;
SqlConnection cnMySqlComEx;
cnMySqlComEx = new SqlConnection(cnSqlComEx);
cnMySqlComEx.Open();
SqlCommand cmdMySqlComEx = new SqlCommand();
cmdMySqlComEx.Connection = cnMySqlComEx;
cmdMySqlComEx.CommandText = cmdSqlComEx;
cmdMySqlComEx.CommandType = typSqlComEx;
if (parSqlComEx != null)
{
cmdMySqlComEx.Parameters.AddRange(parSqlComEx);
}
retSqlComEx = cmdMySqlComEx.ExecuteNonQuery();
if (cnMySqlComEx != null)
{
if (cnMySqlComEx.State == ConnectionState.Open)
{
cnMySqlComEx.Close();
}
}
return (retSqlComEx);
}
// Quest'altra invece legge lo script e lo esegue con la classe di sopra
// Tenta infatti di connettersi al database DbVeterinario, e se non lo
// trova provvede alla sua creazione
public void DatabaseCreator()
{
string dbCrCn = "Data Source=.;Initial Catalog=master;Integrated Security=True";
string dbCrRw = File.ReadAllText("dbVeterinario.sql");
string [] dbCrCmd = dbCrRw.Split(new string [] {"GO","Go","gO","go"},StringSplitOptions.RemoveEmptyEntries);
SqlConnection dbExMyCn;
dbExMyCn = new SqlConnection("Data Source=.;Initial Catalog=DbVeterinario;Integrated Security=True");
try
{
dbExMyCn.Open();
}
catch
{
for (int dbCrIndex = 0; dbCrIndex < dbCrCmd.Length; dbCrIndex++)
{
SqlComEx(dbCrCn, dbCrCmd[dbCrIndex], CommandType.Text, null);
}
}
}
Shadow
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !