Advertisement
Stacklysm

SQL Connection Test (Error)

Oct 2nd, 2018
184
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.56 KB | None | 0 0
  1. static class ConnectionManager
  2.     {
  3.         public static string Username { get; set; }
  4.         public static string Password { get; set; }
  5.         public static string Database { get; set; }
  6.         public static string Server { get; set; }
  7.         public static SqlConnection Connection { get; set; }
  8.  
  9.         private static string ConnectionString { get { return $@"Data Source={Server};Initial Catalog={Database};Integrated Security=SSPI;User ID={Username};Password={Password};"; } }
  10.        
  11.         private static bool _ready = false;
  12.  
  13.         /// <summary>
  14.         ///
  15.         /// </summary>
  16.         /// <param name="user">Name of the user (with domain)</param>
  17.         /// <param name="pass">Password of the user</param>
  18.         /// <param name="database">Name of the database</param>
  19.         /// <param name="server">Name of the server</param>
  20.         public static void Initialize(string user, string pass, string database, string server)
  21.         {
  22.             try
  23.             {
  24.                 /*
  25.                 Username = user;
  26.                 Password = pass;
  27.                 Database = database;
  28.                 Server = server;
  29.  
  30.                 Connection = new SqlConnection(ConnectionString);
  31.                 */
  32.  
  33.                 Connection = new SqlConnection(new SqlConnectionStringBuilder()
  34.                 {
  35.                     DataSource = server,
  36.                     InitialCatalog = database,
  37.                     UserID = user,
  38.                     Password = pass
  39.                 }.ConnectionString);
  40.  
  41.                 Connection.Open();
  42.  
  43.                 _ready = true;
  44.                 Console.WriteLine("A conexão foi aberta.");
  45.             }
  46.             catch(SqlException sqlex)
  47.             {
  48.                 Console.WriteLine(sqlex.Message);
  49.             }
  50.             finally
  51.             {
  52.                 _ready = false;
  53.             }
  54.         }
  55.  
  56.         /// <summary>
  57.         ///
  58.         /// </summary>
  59.         /// <param name="tableName"></param>
  60.         /// <param name="fields">Example: field1,field2,field3,field4</param>
  61.         /// <param name="values"></param>
  62.         public static void Insert(string tableName, string fields, params string[] values)
  63.         {
  64.             if(values.Length > 0 && _ready)
  65.             {
  66.                 try
  67.                 {
  68.                     using (SqlCommand comm = new SqlCommand($"INSERT INTO {tableName} VALUES ({fields})", Connection))
  69.                     {
  70.                         for (int i = 0; i < values.Length; i++)
  71.                         {
  72.                             comm.Parameters.AddWithValue($"@{fields.Split(',')[i]}", $"@{values[i]}");
  73.                         }
  74.  
  75.                         comm.ExecuteNonQuery();
  76.                         Console.WriteLine($"{values.Length} campos foram inseridos.");
  77.                     }
  78.                 }
  79.                 catch(SqlException sqlex)
  80.                 {
  81.                     Console.WriteLine(sqlex.Message);
  82.                 }
  83.                 finally
  84.                 {
  85.                     Connection.Close();
  86.                 }
  87.             }
  88.             else
  89.             {
  90.                 Console.WriteLine("Nenhum parametro foi inserido ou conexão não está pronta.");
  91.             }
  92.         }
  93.  
  94.         public static void EndConnection()
  95.         {
  96.             Connection.Close();
  97.             Connection.Dispose();
  98.         }
  99.  
  100.         public static void ClearParameters()
  101.         {
  102.             Username = "";
  103.             Password = "";
  104.             Database = "";
  105.             Server = "";
  106.         }
  107.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement