private static FbConnectionStringBuilder PrepareFirebirdConnectionString(string connectionString) { var appDir = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location); var csb = new FbConnectionStringBuilder(connectionString); var clientLibFilename = connectionString.ToLowerInvariant().Contains("clientlibrary") ? Path.GetFileName(csb.ClientLibrary) : "fbclient.dll"; csb.ClientLibrary = Path.Combine(appDir, clientLibFilename); if (!connectionString.ToLowerInvariant().Contains("servertype")) { csb.ServerType = FbServerType.Embedded; } if (string.IsNullOrWhiteSpace(csb.UserID)) { csb.UserID = "SYSDBA"; } if (!connectionString.ToLowerInvariant().Contains("charset")) { csb.Charset = "UTF8"; } return(csb); }
public void ConnectionPoolingTest() { // Using ActiveUsers as proxy for number of connections FbConnectionStringBuilder csb = BuildConnectionStringBuilder(); csb.Pooling = true; csb.ConnectionLifeTime = 5; string cs = csb.ToString(); FbConnection myConnection1 = new FbConnection(cs); FbConnection myConnection2 = new FbConnection(cs); int active = ActiveConnections(); // Open two connections. Console.WriteLine("Open two connections."); myConnection1.Open(); myConnection2.Open(); // Now there are two connections in the pool that matches the connection string. // Return the both connections to the pool. Console.WriteLine("Return both of the connections to the pool."); myConnection1.Close(); myConnection2.Close(); Assert.AreEqual(active + 2, ActiveConnections()); // Clear pools FbConnection.ClearAllPools(); }
public static string GetConnectionString() { FirebirdSql.Data.FirebirdClient.FbConnectionStringBuilder csb = new FbConnectionStringBuilder(); csb.ServerType = FbServerType.Embedded; csb.UserID = "sysdba"; csb.Password = "******"; if (System.Environment.OSVersion.Platform == System.PlatformID.Unix) { csb.Password = "******"; } csb.Dialect = 3; // csb.Database = System.Web.Hosting.HostingEnvironment.MapPath("~/App_Data/MyDB.fdb"); csb.Database = System.Web.Hosting.HostingEnvironment.MapPath("~/App_Data/FloorPlanner.fdb"); // string connectionString = "ServerType=1;User=SYSDBA;Password=masterkey;Dialect=3;Database=" // + System.Web.Hosting.HostingEnvironment.MapPath("~/App_Data/MyDB.fdb"); string cs = csb.ConnectionString; // http://stackoverflow.com/questions/4862392/firebird-2-5-reports-is-not-a-valid-database-although-it-is // cs += ";fix_fss_data=WIN1251; fix_fss_metadata=WIN1251;"; // cs += ";FIX_FSS_METADATA=utf8"; return(cs); } // End Function GetConnectionString
//метод подключения к базе данных public void OpenDBConnection(string source, string db, string user, string pass, string codepage) { try { FbConnectionStringBuilder cs = new FbConnectionStringBuilder(); cs.DataSource = source; cs.Database = db; cs.UserID = user; cs.Password = pass; cs.Dialect = 3; cs.Charset = codepage; string dbsource = cs.ToString(); if (GetConnectionState()) //если уже было подключение, закрываем его { dbConnect.Close(); } dbConnect = new FbConnection(dbsource); dbConnect.Open(); } catch (Exception ex) { dbConnect = null; //тут надо что то придумать } }
/// <inheritdoc/> protected override SqlDriver CreateDriver(string connectionString, SqlDriverConfiguration configuration) { using (var connection = new FbConnection(connectionString)) { connection.Open(); SqlHelper.ExecuteInitializationSql(connection, configuration); var dataSource = new FbConnectionStringBuilder(connectionString).DataSource; var defaultSchema = GetDefaultSchema(connection); var coreServerInfo = new CoreServerInfo { ServerVersion = GetVersionFromServerVersionString(connection.ServerVersion), ConnectionString = connectionString, MultipleActiveResultSets = true, DatabaseName = defaultSchema.Database, DefaultSchemaName = defaultSchema.Schema, }; if (Int32.Parse(coreServerInfo.ServerVersion.Major.ToString() + coreServerInfo.ServerVersion.Minor.ToString()) < 25) { throw new NotSupportedException(Strings.ExFirebirdBelow25IsNotSupported); } if (coreServerInfo.ServerVersion.Major == 2 && coreServerInfo.ServerVersion.Minor == 5) { return(new v2_5.Driver(coreServerInfo)); } return(null); } }
public Inicio(FbConnectionStringBuilder _path, FbConnection _con) { InitializeComponent(); this.Location = new Point(262, 113); con = _con; path = _path; }
public MainWindow(Int32 accountType) { InitializeComponent(); WindowStartupLocation = WindowStartupLocation.CenterScreen; FbConnectionStringBuilder csb = new FbConnectionStringBuilder(); csb.DataSource = (string)Application.Current.Properties["dataSource"]; csb.Port = 3050; csb.Database = (string)Application.Current.Properties["dataBase"]; csb.UserID = (string)Application.Current.Properties["userID"]; csb.Password = (string)Application.Current.Properties["password"]; csb.ServerType = FbServerType.Default; connection = new FbConnection(csb.ToString()); connection.Open(); refreshBookList(); CurrentDG = Books; if (accountType == 1) { WorkersTI.IsEnabled = false; RolesTI.IsEnabled = false; CategoriesTI.IsEnabled = false; } }
public void CryptKeyValueSetter() { var b = new FbConnectionStringBuilder(); b.CryptKey = Encoding.ASCII.GetBytes("test"); Assert.AreEqual("crypt key=\"dGVzdA==\"", b.ToString()); }
public void SetSb(FbConnectionStringBuilder sb) { sb.Database = this.database; sb.DataSource = this.dataSource; sb.Password = this.password; sb.UserID = this.userID; }
public override IDbConnection Open(out string errorMessage) { FbConnectionStringBuilder builder = null; try { if (settings.UseConnectionString) { builder = new FbConnectionStringBuilder(settings.ConnectionString); } else { builder = new FbConnectionStringBuilder(); builder.Database = settings.Database; builder.UserID = settings.Username; builder.Password = settings.Password; builder.Port = settings.Port; builder.DataSource = settings.Server; } builder.Pooling = settings.EnablePooling; builder.MinPoolSize = settings.MinPoolSize; builder.MaxPoolSize = settings.MaxPoolSize; connection = new FbConnection(builder.ToString()); connection.Open(); errorMessage = String.Empty; isConnectionError = false; return(connection); } catch { isConnectionError = true; errorMessage = String.Format("Unable to connect. (CS={0})", builder == null ? "NULL" : builder.ToString()); return(null); } }
public ConnSbDummy(FbConnectionStringBuilder sb) { this.database = sb.Database; this.dataSource = sb.DataSource; this.password = sb.Password; this.userID = sb.UserID; }
#pragma warning restore 649 public override void CreateDatabase(string constr) { var csb = new FbConnectionStringBuilder(constr) { Pooling = false }; FbConnection.CreateDatabase(csb.ConnectionString, 16384, false, true); using (var con = new FbConnection(csb.ConnectionString)) using (var cmd = con.CreateCommand()) { con.Open(); #region bug drug block //cmd.CommandText = @"CREATE TABLE crdb (tid INTEGER, name CHAR(120));"; //cmd.ExecuteScalar(); //cmd.CommandText = @"DROP TABLE crdb;"; //cmd.ExecuteScalar(); #endregion #region init actions: register udf functions cmd.CommandText = @" DECLARE EXTERNAL FUNCTION strlen CSTRING(32767) RETURNS INTEGER BY VALUE ENTRY_POINT 'IB_UDF_strlen' MODULE_NAME 'ib_udf';" ; cmd.ExecuteScalar(); #endregion } }
public static bool check_func(FbConnectionStringBuilder fc) { bool res_ = false; using (FbConnection fb = new FbConnection(fc.ConnectionString)) { try { fb.Open(); using (FbTransaction ft = fb.BeginTransaction()) { using (FbCommand fcon = new FbCommand(sql_func, fb, ft)) { using (FbDataReader fr = fcon.ExecuteReader()) { while (fr.Read()) { res_ = true; } fr.Dispose(); } fcon.Dispose(); } ft.Commit(); ft.Dispose(); } } catch { } finally { fb.Close(); } fb.Dispose(); } return(res_); }
public void ConnectionPoolingTimeOutTest() { // Using ActiveUsers as proxy for number of connections FbConnectionStringBuilder csb = BuildConnectionStringBuilder(); csb.Pooling = true; csb.ConnectionLifeTime = 5; string cs = csb.ToString(); int active = ActiveConnections(); using (FbConnection myConnection1 = new FbConnection(cs), myConnection2 = new FbConnection(cs)) { myConnection1.Open(); myConnection2.Open(); Assert.AreEqual(active + 2, ActiveConnections()); myConnection1.Close(); myConnection2.Close(); } System.Threading.Thread.Sleep(csb.ConnectionLifeTime * 2 * 1000); Assert.AreEqual(active, ActiveConnections()); FbConnection.ClearAllPools(); }
public void ConnectionPoolingMinPoolSizeTest() { FbConnectionStringBuilder csb = BuildConnectionStringBuilder(); csb.Pooling = true; csb.ConnectionLifeTime = 5; csb.MinPoolSize = 3; string cs = csb.ToString(); int active = ActiveConnections(); var connections = new List <FbConnection>(); try { for (int i = 0; i < csb.MinPoolSize * 2; i++) { var connection = new FbConnection(cs); Assert.DoesNotThrow(() => connection.Open()); connections.Add(connection); } } finally { connections.ForEach(x => x.Dispose()); } System.Threading.Thread.Sleep(csb.ConnectionLifeTime * 2 * 1000); Assert.AreEqual(active + csb.MinPoolSize, ActiveConnections()); FbConnection.ClearAllPools(); }
public FirebirdClient(string ipAddress, string baseName, string user, string pass) { Logging.ToLog("FirebirdClient - Создание клиента Firebird"); if (string.IsNullOrEmpty(ipAddress) || string.IsNullOrEmpty(baseName) || string.IsNullOrEmpty(user)) { connection = new FbConnection(); } else { FbConnectionStringBuilder cs = new FbConnectionStringBuilder { DataSource = ipAddress, Database = baseName, UserID = user, Password = pass, Charset = "UTF8", Pooling = false }; string connectionString = cs.ToString(); connection = new FbConnection(connectionString); } IsConnectionOpened(); }
public void ConnectionPoolingMinPoolSizeTest() { FbConnectionStringBuilder csb = BuildConnectionStringBuilder(FbServerType, Compression); csb.Pooling = true; csb.ConnectionLifeTime = 5; csb.MinPoolSize = 3; string cs = csb.ToString(); int active = GetActiveConnections(); var connections = new List <FbConnection>(); try { for (int i = 0; i < csb.MinPoolSize * 2; i++) { var connection = new FbConnection(cs); connections.Add(connection); Assert.DoesNotThrow(() => connection.Open()); } } finally { connections.ForEach(x => x.Dispose()); } Thread.Sleep(TimeSpan.FromSeconds(csb.ConnectionLifeTime * 2)); Assert.AreEqual(active + csb.MinPoolSize, GetActiveConnections()); }
public void DatabaseTriggersTest() { FbConnectionStringBuilder csb = BuildConnectionStringBuilder(FbServerType, Compression); csb.Pooling = false; int rows; csb.NoDatabaseTriggers = false; using (var conn = new FbConnection(csb.ToString())) { conn.Open(); rows = LogRowsCount(conn); TestContext.WriteLine(rows); } csb.NoDatabaseTriggers = true; using (var conn = new FbConnection(csb.ToString())) { conn.Open(); Assert.AreEqual(rows, LogRowsCount(conn)); } csb.NoDatabaseTriggers = false; using (var conn = new FbConnection(csb.ToString())) { conn.Open(); Assert.AreEqual(rows + 1, LogRowsCount(conn)); } }
public static string GetConnFBstring() { FbConnectionStringBuilder csb = new FbConnectionStringBuilder(); // Указываем тип используемого сервера csb.ServerType = FbServerType.Embedded; // Путь до файла с базой данных csb.Database = @"D:\users\baa\DB\mac201301010\BUD152.FDB"; // Настройка параметров "общения" клиента с сервером csb.Charset = "WIN1251"; csb.Dialect = 3; // Путь до библиотеки-сервера Firebird // Если библиотека находится в тойже папке // что и exe фаил - указывать путь не надо csb.ClientLibrary = @"C:\Program Files\Firebird\Firebird_2_5\bin\gds32.dll"; // Настройки аутентификации csb.UserID = "SYSDBA"; csb.Password = "******"; return(csb.ToString()); }
public void ConnectionPoolingMaxPoolSizeTest() { FbConnection.ClearAllPools(); FbConnectionStringBuilder csb = BuildConnectionStringBuilder(FbServerType, Compression); csb.Pooling = true; csb.ConnectionLifeTime = 120; csb.MaxPoolSize = 10; string cs = csb.ToString(); var connections = new List <FbConnection>(); try { for (int i = 0; i <= csb.MaxPoolSize; i++) { var connection = new FbConnection(cs); connections.Add(connection); if (i == csb.MaxPoolSize) { Assert.Throws <InvalidOperationException>(() => connection.Open()); } else { Assert.DoesNotThrow(() => connection.Open()); } } } finally { connections.ForEach(x => x.Dispose()); } }
public static FbConnectionSettings GetSettings(DbConnection connection) { var csb = new FbConnectionStringBuilder(connection.ConnectionString); var settingsCsb = _settingsCsb(csb); return(Settings.GetOrAdd(settingsCsb.ConnectionString, key => { var opened = false; if (connection.State == ConnectionState.Closed) { connection.Open(); opened = true; } try { var version = new ServerVersion(connection.ServerVersion); var connectionSettings = new FbConnectionSettings(settingsCsb, version); return connectionSettings; } finally { if (opened) { connection.Close(); } } })); }
public string Resultado() { FbConnectionStringBuilder cs = new FbConnectionStringBuilder(); cs.DataSource = "localhost"; cs.Database = "C:\\Users\\Wellington\\Documents\\KAMBESS.fdb"; cs.UserID = "SYSDBA"; cs.Password = "******"; cs.Charset = "NONE"; cs.Pooling = false; FbConnection fb = new FbConnection(cs.ToString()); string saida = ""; try { fb.Open(); FbCommand leitura = new FbCommand("Select OPE_NOM From OPERACAO WHERE OPE_COD = 40", fb); FbDataReader leitor = leitura.ExecuteReader(); while (leitor.Read()) { saida = Convert.ToString(leitor[0]); } } catch (Exception e) { saida = Convert.ToString(e); } return(saida); }
protected override void SetConnectionString(string value) { FConnectionString = value; FbConnectionStringBuilder builder = new FbConnectionStringBuilder(value); try { tbDatabase.Text = builder.Database; } catch { tbDatabase.Text = ""; } try { tbUserName.Text = builder.UserID; } catch { tbUserName.Text = ""; } try { tbPassword.Text = builder.Password; } catch { tbPassword.Text = ""; } }
/// <summary> /// Build a connection string /// </summary> /// <param name="dbpath"></param> /// <param name="source"></param> /// <param name="user"></param> /// <param name="pass"></param> /// <returns></returns> protected string GetConnectionString(string dbpath, string source, string user, string pass) { FbConnectionStringBuilder cs = new FbConnectionStringBuilder(); // If Not fbDBServerType = FbServerType.Embedded Then //cs.DataSource = source; cs.Password = pass; cs.UserID = user; //cs.Port = 3050; // End If cs.Pooling = true; cs.Database = dbpath; cs.Charset = "UTF8"; cs.ConnectionLifeTime = 30; cs.ServerType = fbDBServerType; cs.ClientLibrary = "fbclient.dll"; fbDBDataSet.Locale = CultureInfo.InvariantCulture; string connstr = cs.ToString(); if (cs != null) { cs = null; } return(connstr); }
public void SimpleSelectTest() { FbConnectionStringBuilder csb = BuildConnectionStringBuilder(this.FbServerType); csb.Enlist = true; using (TransactionScope scope = new TransactionScope()) { using (FbConnection c = new FbConnection(csb.ToString())) { c.Open(); using (FbCommand command = new FbCommand("select * from TEST where (0=1)", c)) { using (FbDataReader r = command.ExecuteReader()) { while (r.Read()) { } } } } scope.Complete(); } }
public void InsertTest() { FbConnectionStringBuilder csb = BuildConnectionStringBuilder(this.FbServerType); csb.Enlist = true; using (TransactionScope scope = new TransactionScope()) { using (FbConnection c = new FbConnection(csb.ToString())) { c.Open(); string sql = "insert into TEST (int_field, date_field) values (1002, @date)"; using (FbCommand command = new FbCommand(sql, c)) { command.Parameters.Add("@date", FbDbType.Date).Value = DateTime.Now.ToString(); int ra = command.ExecuteNonQuery(); Assert.AreEqual(ra, 1); } } scope.Complete(); } }
/// <inheritdoc/> protected override string BuildConnectionString(UrlInfo connectionUrl) { SqlHelper.ValidateConnectionUrl(connectionUrl); ArgumentValidator.EnsureArgumentNotNullOrEmpty(connectionUrl.Resource, "connectionUrl.Resource"); ArgumentValidator.EnsureArgumentNotNullOrEmpty(connectionUrl.Host, "connectionUrl.Host"); var builder = new FbConnectionStringBuilder(); // host, port, database if (!string.IsNullOrEmpty(connectionUrl.Host)) { var port = connectionUrl.Port != 0 ? connectionUrl.Port : DefaultPort; builder.Database = connectionUrl.Resource; builder.DataSource = connectionUrl.Host; builder.Dialect = 3; builder.Pooling = false; builder.Port = port; builder.ReturnRecordsAffected = true; } // user, password if (!string.IsNullOrEmpty(connectionUrl.User)) { builder.UserID = connectionUrl.User; builder.Password = connectionUrl.Password; } // custom options foreach (var parameter in connectionUrl.Params) { builder.Add(parameter.Key, parameter.Value); } return(builder.ToString()); }
private void button1_Click(object sender, EventArgs e) { FbConnectionStringBuilder cs = new FbConnectionStringBuilder(); FbConnection fbConn = new FbConnection(); cs.DataSource = "localhost"; // имя компьютера, на котором находится база данных cs.UserID = "SYSDBA"; // имя пользователя, который может производить манипуляции с базой cs.Password = "******"; // паоль пользователя, который может производить манипуляции с базой cs.Database = "E:\\WindowsFormsApp1\\WindowsFormsApp1\\bd\\DRIVED.fdb"; // путь к файлу базы данных // cs.Port = 3050; // порт подключения к базе cs.Charset = "win1251"; // кодировка символов string ConnString = cs.ToString(); fbConn.ConnectionString = ConnString; fbConn.Open(); DataTable dt = new DataTable(); FbDataAdapter da = new FbDataAdapter(); FbCommand cmd = new FbCommand("select Name,Surname,LastName,pasport_num,pasport_serial_num,place_num,price from new_table where Flight_id ='" + textBox1.Text + "';", fbConn); cmd.CommandType = CommandType.Text; FbDataReader dr = cmd.ExecuteReader(); dt.Load(dr); dataGridView2.DataSource = dt; fbConn.Close(); }
public Form1() { InitializeComponent(); FbConnectionStringBuilder cs = new FbConnectionStringBuilder(); FbConnection fbConn = new FbConnection(); cs.DataSource = "localhost"; // имя компьютера, на котором находится база данных cs.UserID = "SYSDBA"; // имя пользователя, который может производить манипуляции с базой cs.Password = "******"; // паоль пользователя, который может производить манипуляции с базой cs.Database = "E:\\WindowsFormsApp1\\WindowsFormsApp1\\bd\\DRIVED.fdb"; // путь к файлу базы данных // cs.Port = 3050; // порт подключения к базе cs.Charset = "win1251"; // кодировка символов string ConnString = cs.ToString(); fbConn.ConnectionString = ConnString; fbConn.Open(); DataTable dt = new DataTable(); FbDataAdapter da = new FbDataAdapter(); FbCommand cmd = new FbCommand("select * from new_table", fbConn); cmd.CommandType = CommandType.Text; FbDataReader dr = cmd.ExecuteReader(); dt.Load(dr); dataGridView1.DataSource = dt; fbConn.Close(); }
public override string ToString() { const string canNotParseMessage = "<Connection string can not be parsed>"; try { var connectionStringBuilder = new FbConnectionStringBuilder(_connectionString); var builder = new StringBuilder(); builder.Append("Data Source: "); builder.Append(connectionStringBuilder.DataSource); builder.Append(", Server Type: "); builder.Append(connectionStringBuilder.ServerType); builder.Append(", Database: "); builder.Append(connectionStringBuilder.Database); return(builder.Length != 0 ? string.Format("Firebird Server: {0}", builder) : canNotParseMessage); } catch (Exception) { return(canNotParseMessage); } }
public string BuildConnectionString(bool pooling) { FbConnectionStringBuilder cs = new FbConnectionStringBuilder(); cs.UserID = ConfigurationSettings.AppSettings["User"]; cs.Password = ConfigurationSettings.AppSettings["Password"]; cs.Database = ConfigurationSettings.AppSettings["Database"]; cs.DataSource = ConfigurationSettings.AppSettings["DataSource"]; cs.Port = Int32.Parse(ConfigurationSettings.AppSettings["Port"]); cs.Charset = ConfigurationSettings.AppSettings["Charset"]; cs.Pooling = pooling; cs.ServerType = Int32.Parse(ConfigurationSettings.AppSettings["ServerType"]); return cs.ToString(); }
public string BuildServicesConnectionString(bool includeDatabase) { FbConnectionStringBuilder cs = new FbConnectionStringBuilder(); cs.UserID = ConfigurationSettings.AppSettings["User"]; cs.Password = ConfigurationSettings.AppSettings["Password"]; if (includeDatabase) { cs.Database = ConfigurationSettings.AppSettings["Database"]; } cs.ServerType = Convert.ToInt32(ConfigurationSettings.AppSettings["ServerType"]); return cs.ToString(); }