|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Добрый день. Никак не могу сообразить, как правильно реализовать следующее задание: В проекте 2 формы: Form1 - форма с текстовыми полями "Логин", "Пароль" и "База данных" и кнопкой "Войти". Form2 - форма, в которой будут выполняться запросы в базу и результат выводиться в listview. Необходимо чтобы был постоянный коннект к базе. Вот кусок кода, при помощи которого я нормально подключаюсь к базе, но он прописан в событии Click на кнопке первой формы. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
Как правильно перенести этот код в Program.cs чтобы коннект был постоянным. и можно было постоянно обращаться к этому классу, подавая на вход ему только строку sql запроса? Помогите кодом. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2016, 15:49 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Объявить как Код: c# 1. 2. 3. 4.
Тогда отовсюду можно будет обращаться Код: c# 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2016, 16:13 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Хоть убей не могу понять как это правильно прописать. Вот что есть в program.cs Код: 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.
Куда тут прописать. Причем так чтобы при нажатии на кнопку на Form1 в строку коннекта подставились значения из полей. и создался коннект. А второй класс должен заполнять какой-нибудь datagrid или массив данными из запроса, который подается на вход этому классу ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2016, 16:26 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Извиняюсь за идиотские вопросы. Я не писал никогда на ООП языках. Всю жизнь хватало VB. Просто так обстоятельства сложились что надо небольшой проект именно C# написать. Не могу переключить мозги на ООП мышление ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2016, 16:28 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
сделал так Код: 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.
Вызываю по кнопке: Код: c# 1. 2. 3. 4. 5. 6.
выдает ошибку: Дополнительные сведения: ExecuteReader: Свойство Connection не инициализировано. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2016, 18:09 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Karlusсделал так Код: 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.
Вызываю по кнопке: Код: c# 1. 2. 3. 4. 5. 6.
выдает ошибку: Дополнительные сведения: ExecuteReader: Свойство Connection не инициализировано. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2016, 18:11 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
потому что код после строчки Код: c# 1.
еще не выполнился ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2016, 18:35 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
KarlusНеобходимо чтобы был постоянный коннект к базе Вы сами себе придумали это условие? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2016, 18:37 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2016, 19:17 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Иммануил КантKarlusНеобходимо чтобы был постоянный коннект к базе Вы сами себе придумали это условие?для виндового приложения это - нормально. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2016, 20:42 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Иммануил Кант, Нет, это не мое желание, поддерживать постоянный коннект. Спасибо за ссылки. Разобрался. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2016, 09:52 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
KarlusНет, это не мое желание, поддерживать постоянный коннект. Неправильное желание. Микроофт не рекомендует ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2016, 21:36 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Cat2Неправильное желание. Микроофт не рекомендуетчивоита? это-же не пул, монопольное соединение. возвращать не нужно, соответственно. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2016, 21:48 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Cat2, наоборот, глупо открывать/закрывать соединения каждый раз, зная, что его (соединение) никто использовать не будет=) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2016, 21:51 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
JVF, позвольте, а зачем держать открытым соединение, если его никто не использует, и тем самым уменьшать доступные подключения? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 12:49 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
masleshovJVF, позвольте, а зачем держать открытым соединение, если его никто не использует, и тем самым уменьшать доступные подключения? от желания наступить на грабли, особенно многопоточные ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 12:52 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
masleshovJVF, позвольте, а зачем держать открытым соединение, если его никто не использует, и тем самым уменьшать доступные подключения?затем, сынок, что создание новаго соединения это - дорогое удовольствие, а в клиент-серверных приложениях пул соединений - не используется. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 19:08 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
JVFmasleshovJVF, позвольте, а зачем держать открытым соединение, если его никто не использует, и тем самым уменьшать доступные подключения?затем, сынок, что создание новаго соединения это - дорогое удовольствие, а в клиент-серверных приложениях пул соединений - не используется. маме своей побибикай (с) чушь порете, товарищ ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 19:11 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Иммануил Бонд АренкоJVFпропущено... затем, сынок, что создание новаго соединения это - дорогое удовольствие, а в клиент-серверных приложениях пул соединений - не используется. маме своей побибикай (с) чушь порете, товарищты хочешь затрахать сервер ненужными накладными расходами по созданию/уничтожению соединений? давай, сына, нихто тебе не мешает :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 19:15 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
JVFИммануил Бонд Аренкопропущено... маме своей побибикай (с) чушь порете, товарищты хочешь затрахать сервер ненужными накладными расходами по созданию/уничтожению соединений? давай, сына, нихто тебе не мешает :) про пул соединений слышал? а, скорее всего нет ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 19:19 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Иммануил Бонд Аренкопро пул соединений слышал? а, скорее всего нетавторв клиент-серверных приложениях пул соединений - не используется.давай раскажи нам тут про использование пула в КС приложениях. мож чего и узнаю на старости лет. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 19:22 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
JVFИммануил Бонд Аренкопро пул соединений слышал? а, скорее всего нетавторв клиент-серверных приложениях пул соединений - не используется.давай раскажи нам тут про использование пула в КС приложениях. мож чего и узнаю на старости лет. не узнаешь, ибо туп ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 19:24 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Иммануил Бонд Аренконе узнаешь, ибо туптуп как раз ты, если не понимаешь принципов работы одно и многозвенных приложений. фигачь пул из 20-ти соединений на одного клиента, чо. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 19:31 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
JVFИммануил Бонд Аренконе узнаешь, ибо туптуп как раз ты, если не понимаешь принципов работы одно и многозвенных приложений. фигачь пул из 20-ти соединений на одного клиента, чо. бу-га-га ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 19:34 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
постоянный коннект нужен из-за использования процедур, заполняющих темповый таблицы на сессию. а переписывать сотню процедур из-за софтинки желания нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 19:54 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Karlus, ну так держите его в статическом поле класса ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 20:02 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
JVFmasleshovJVF, позвольте, а зачем держать открытым соединение, если его никто не использует, и тем самым уменьшать доступные подключения?затем, сынок, что создание новаго соединения это - дорогое удовольствие, а в клиент-серверных приложениях пул соединений - не используется. папочка, расскажи пожалуйста, а что же используется в клиент-серверных приложениях вместо пула? особенно интересует случай, когда используется ORM и да, твоя любимая трехзвенная архитектура кстати. а ты давно свой проект на мемори лики проверял? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 05:12 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Karlusпостоянный коннект нужен из-за использования процедур, заполняющих темповый таблицы на сессию. а переписывать сотню процедур из-за софтинки желания нет. А зачем их переписывать? ============ Если сотня процедур выполняется подряд, без перерыва, то тогда да, лучше открыть соединение и держать открытым пока они все не выполнятся. Но как только начинает работать пользователь, который что-то читает или пишет раз в 5 минут, то тут лучше открывать и закрывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 07:13 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
[quot Cat2]Karlus============ Если сотня процедур выполняется подряд, без перерыва, то тогда да, лучше открыть соединение и держать открытым пока они все не выполнятся. С концепцией пула вроде также будет, откроем через using соединение, пул выдаст нам имеющееся свободное или создаст новое, и внутрях выполним процедуры, после чего вернем в пул соединение ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 08:17 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Блин, криворуко процитировал, должно быть так Cat2Если сотня процедур выполняется подряд, без перерыва, то тогда да, лучше открыть соединение и держать открытым пока они все не выполнятся. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 08:18 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
та ладно вам, приложению лет 300, изначально писали на повербилдере, а там модно было держать глобальный коннект, да и оракловый коннет подороже будет чем у MSSQL ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 08:57 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Karlusпостоянный коннект нужен из-за использования процедур, заполняющих темповый таблицы на сессию. а переписывать сотню процедур из-за софтинки желания нет. Если постоянный коннект не держать, то как тогда решать проблемы связанные с временными таблицами? Например использую такой прием для установки фильтра: создается временная таблица с ID нужных записей, затем выборка Код: sql 1.
Во первых фильтр гибкий можно делать, во-вторых если наложение фильтра медленное, то тормоз только один раз, в третьих в #filter кроме ID можно часть инфы с других таблиц закэшировать, а в четвертых просто удобно, например в справочнике, когда исправленная запись не исчезает, т.к. после корректировки она перестала попадать под фильтр. Пишу не в .net, в C# с гуем пока не разбирался. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 09:25 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
JVFИммануил Бонд Аренкопропущено... маме своей побибикай (с) чушь порете, товарищты хочешь затрахать сервер ненужными накладными расходами по созданию/уничтожению соединений? давай, сына, нихто тебе не мешает :)Ну настрой так, чтобы в пуле было всегда одно соединение. В чём проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 09:33 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Dima TЕсли постоянный коннект не держать, то как тогда решать проблемы связанные с временными таблицами?Создавай временную таблицу непосредственно перед запросом, в том же соединении, что и основной запрос. Сразу после запроса временную таблицу, вероятно, лучше удалить. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 09:35 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Изопропилта ладно вам, приложению лет 300, изначально писали на повербилдереИли на Delphi. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 09:38 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Dima TЕсли постоянный коннект не держать, то как тогда решать проблемы связанные с временными таблицами? Не надо их решать, надо правильно индексы строить, с нужным покрытием ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 11:26 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Cat2Не надо их решать, надо правильно индексы строить, с нужным покрытием В сложных запросах не всегда индексы помогают. например Код: sql 1. 2. 3. 4. 5.
т.е. фильтр по связанным таблицам, и не по одной. И индексы все есть, но таблицы большие: сотни тысяч и миллионы записей. И тупит все это секунды, хотя результата может быть меньше сотни строк. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 12:51 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Dima TCat2Не надо их решать, надо правильно индексы строить, с нужным покрытием В сложных запросах не всегда индексы помогают. например Код: sql 1. 2. 3. 4. 5.
т.е. фильтр по связанным таблицам, и не по одной. И индексы все есть, но таблицы большие: сотни тысяч и миллионы записей. И тупит все это секунды, хотя результата может быть меньше сотни строк. Ничего не могу на это ответить, так как надо смотреть план выполнения запроса и решать, правильно ли построены индексы. Может у Вашей t1 нужен другой кластерный индекс? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 13:30 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Cat2кластерный индекс MSSQL разжижает мозг ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 16:20 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
ИзопропилCat2кластерный индекс MSSQL разжижает мозг Foх его сушит ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 19:17 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Алексей КНу настрой так, чтобы в пуле было всегда одно соединение. В чём проблема?и сколько, по-вашему, будет соединений в пуле с одним клиентом? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 19:33 |
|
Подключение к Oracle из C#
|
|||
---|---|---|---|
#18+
Cat2Foх его сушит Когда что-то сохнет, то оно сморщивается, а сморщенный мозг самый эффективный, т.к. извилин максимум ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2016, 20:15 |
|
|
start [/forum/topic.php?all=1&fid=20&tid=1400436]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
58ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
72ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 186ms |
0 / 0 |