Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 46

MySQL: Лучше поднимать соединение с загрузкой программы или перед запросом

10.12.2011, 14:27. Показов 959. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня много вопросов буду задавать по одному =)
1. Когда лучше поднимать соединение с загрузкой программы? или же перед запросом и после разрывать соединение с базой?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.12.2011, 14:27
Ответы с готовыми решениями:

Вывод анимации или текста перед загрузкой EXCELL
Перед запуском вычислений (допустим длительного цикла) я хочу вывести на экран сообщении, типа подождите. После того как цикл закончится...

Пожалуйста нужно разобраться с запросом Mysql! Одним запросом из двух таблиц / MySQL
У меня на главной странице существует вот такой запрос (он ниже), который вытаскивает из таблицы "glavnaya" нужные строки. ...

C точки зрения безопасности и быстродействия, что лучше, открывать соединение на каждой странице .asp, или в начале?
C точки зрения безопасности и быстродействия, что лучше, открывать соединение на каждой странице .asp, или в начале?

6
CEO
Эксперт С++
 Аватар для Alligieri
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
10.12.2011, 15:40
Цитата Сообщение от -=Tiger=- Посмотреть сообщение
1. Когда лучше поднимать соединение с загрузкой программы? или же перед запросом и после разрывать соединение с базой?
Соединение с БД - очень дорогостоящий ресурс. Открываем только ПЕРЕД выполнением операции и закрываем сразу как это возможно.
2
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 46
11.12.2011, 00:37  [ТС]
Alligieri, спасибо

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
using System;
using MySql.Data.MySqlClient;
using System.Data;
 
namespace osaka24
{
    /// <summary>
    /// Description of Order.
    /// </summary>
    public class Order
    {
        
        public Order(Config _Config)
        {
            string Connect = string.Format("Database={0}; Data Source={1}; User Id={2}; Password={3}", _Config.Database, _Config.DataSource, _Config.UserId, _Config.Password);
            MySqlConnection myConnection = new MySqlConnection(Connect);
        }
        
        public Order()
        {   
        }
        
        private class Data: DataTable
        {
            public void Category()
            {
                this.Columns.Add("name", System.Type.GetType("System.String"));
                string CommandText = "";
            }
            
            public void Item(string Category)
            {
                this.Columns.Add("number", System.Type.GetType("System.String"));
                this.Columns.Add("name", System.Type.GetType("System.String"));
                this.Columns.Add("price", System.Type.GetType("System.String"));
                string CommandText = "";
            }
        }
    }           
}
как мне получить myConnection из Category и Item да так чтобы не было его доступно вне класса родителя?
0
CEO
Эксперт С++
 Аватар для Alligieri
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
11.12.2011, 01:02
-=Tiger=-,

C#
1
2
3
4
5
6
7
8
public Order(Config _Config)
        {
            string Connect = string.Format("Database={0}; Data Source={1}; User Id={2}; Password={3}", _Config.Database, _Config.DataSource, _Config.UserId, _Config.Password);
            MySqlConnection myConnection = new MySqlConnection(Connect);
            this.connection = myConnection;
        }
 
        private MySqlConnection connection;
И поскольку все вложенные типы имеют доступ даже к private полям:

C#
1
2
3
4
5
6
7
8
private class Data : DataTable
        {
            public Data(Order order)
            {
                this.connection = order.connection;
            }
 
            private MySqlConnection connection;
1
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 46
11.12.2011, 01:16  [ТС]
Alligieri, Спасибо я думал можно было бы обойтись без входного параметра, ну теперь понял. Далее, я читал что когда конструктор делаешь с входными параметрами то должен сделать ещё один без, это так?
0
CEO
Эксперт С++
 Аватар для Alligieri
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
11.12.2011, 01:27
Цитата Сообщение от -=Tiger=- Посмотреть сообщение
Далее, я читал что когда конструктор делаешь с входными параметрами то должен сделать ещё один без, это так?
Зависит от того как будет использоватся (конструироваться) класс в дальнейшем. Создавать беспараметрические конструкторы необязательно (а иногда даже невозможно ввиду ограничений на функциональность класса)
1
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 46
11.12.2011, 02:55  [ТС]
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
    public class Order
    {
        public DataTable Category;
        
        public Order(Config _Config)
        {
            string Connect = string.Format("Database={0}; Data Source={1}; User Id={2}; Password={3}", _Config.Database, _Config.DataSource, _Config.UserId, _Config.Password);
            MySqlConnection myConnection = new MySqlConnection(Connect);
            Category = new Data(myConnection);
        }
        
        private class Data: DataTable
        {
            private MySqlConnection myConnection;
                
            public Data(MySqlConnection Connection)
            {
                this.myConnection = Connection; 
            }
            
            public void Category()
            {
                this.Columns.Add("name", System.Type.GetType("System.String"));
                string CommandText = "";
            }
            
            public void Item(string Category)
            {
                this.Columns.Add("number", System.Type.GetType("System.String"));
                this.Columns.Add("name", System.Type.GetType("System.String"));
                this.Columns.Add("price", System.Type.GetType("System.String"));
                string CommandText = "";
            }
        }
    }           
}
Вот пока, то что я изложил из мыслей.
мне ещё интересно вот это private MySqlConnection myConnection; это верная запись или же лучше private MySqlConnection myConnection = new MySqlConnection;

Добавлено через 1 час 17 минут
Короче я не сказал главного, хочу два датагрида, в одном будут категории а в другом содержимое категорий, вот только не совсем понимаю это мне сделать лучше
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.12.2011, 02:55
Помогаю со студенческими работами здесь

Что лучше MySQL или JSON?
1. Объём занимаемой памяти. 2. Удобство использования. 3. Лёгкость получения данных через PHP.

Что лучше - MSSQL или MySQL
Что лучше MySQL или MS SQL Server? Только без всяких там &quot;Такой знаменитый человек использует MySQL, значит он лучше&quot;. Только по...

Вот думаю купить комп и стою перед выбором что лучше intel или amd
денег немного асми понимаете у кого их много? а комп хочеться получше.

ComboBox перед загрузкой
По событию DropDownOpened открывается ComboBox и в него подгружаются данные из коллекции, происходит это так, открывается пустой список и...

Проблема перед загрузкой ос
Добрый день! У меня вот какая проблема случилась. Перед загрузкой ос появляеться надпись: scan devices please wait No define No...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru