Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
OTT
69 / 69 / 42
Регистрация: 30.09.2014
Сообщений: 342
Завершенные тесты: 4
1

Как подключиться к базе данных

27.04.2015, 16:54. Просмотров 971. Ответов 6
Метки нет (Все метки)

Доброго времени суток друзья, хочу подключить Oracle DataBase к С # , для начало просто бы хотелось сделать функцию проверяющею прошло ли подключение .

написал следующие
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
using Oracle.DataAccess.Client;
 
 
        public OracleConnection (string listener, string login, string password, string host, string port)     
 
   
        {
        
          
            m_connection = new Oracle.DataAccess.Client.OracleConnection("Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)" +
    "(HOST=" + host + ")(PORT=" + port + ")))" + "(CONNECT_DATA=(SERVER=DEDICATED)(SID=" + listener + ")));" +
    "User Id=" + login + ";Password=" + password + ";");
 
                 try
            {
                m_connection.Open();
            }
            catch (Oracle.DataAccess.Client.OracleException e)
            {
                Log.AppLog.LogString("Connection failed - " + e.Message);
                //Console.WriteLine(e.Message);
            }
 
        }
 
 
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        String login = "admin", port = "8080", host = "127.0.0.1", password = "password", listener ="testbase";
        OracleConnection (listener,login,password,host,port) ;    
       
        }

Выдает ошибку

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
------ Построение начато: проект: WindowsFormsApplication1, Конфигурация: Debug x86 ------
C:\Documents and Settings\User\мои документы\visual studio 2010\Projects\WindowsFormsApplication1\WindowsFormsApplication1\Main.cs(29,16): ошибка CS1520: Метод должен иметь тип возвращаемого значения
 
Компиляция завершена -- ошибок: 1, предупреждений: 0
Построение начато 27.04.2015 14:30:12.
EntityDeployNonEmbeddedResources:
Целевой объект "EntityDeployNonEmbeddedResources" пропускается из-за отсутствия выходных файлов.
EntityDeployEmbeddedResources:
Целевой объект "EntityDeployEmbeddedResources" пропускается, так как все выходные файлы актуальны по отношению к входным.
ResolveAssemblyReferences:
  Будет создан список исключений профиля TargetFramework.
CoreResGen:
  Для всех выходных данных обновления не требуется.
GenerateTargetFrameworkMonikerAttribute:
Целевой объект "GenerateTargetFrameworkMonikerAttribute" пропускается, так как все выходные файлы актуальны по отношению к входным.
CoreCompile:
  C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Csc.exe /noconfig /nowarn:1701,1702 /nostdlib+ /platform:x86 /errorreport:prompt /warn:4 /define:DEBUG;TRACE /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\Microsoft.CSharp.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\mscorlib.dll" /reference:C:\oraclexe\app\oracle\product\11.2.0\server\odp.net\bin\2.x\Oracle.DataAccess.dll /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.Core.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.Data.DataSetExtensions.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.Data.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.Data.Entity.dll" /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.OracleClient.dll /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.Deployment.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.Drawing.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.Runtime.Serialization.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.Security.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.Windows.Forms.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.Xml.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.Xml.Linq.dll" /debug+ /debug:full /filealign:512 /optimize- /out:obj\x86\Debug\WindowsFormsApplication1.exe /resource:obj\x86\Debug\WindowsFormsApplication1.Main.resources /resource:obj\x86\Debug\WindowsFormsApplication1.map.resources /resource:obj\x86\Debug\WindowsFormsApplication1.Properties.Resources.resources /resource:obj\x86\Debug\edmxResourcesToEmbed\Model1.csdl,Model1.csdl /resource:obj\x86\Debug\edmxResourcesToEmbed\Model1.msl,Model1.msl /resource:obj\x86\Debug\edmxResourcesToEmbed\Model1.ssdl,Model1.ssdl /target:winexe Main.cs Main.Designer.cs Map.cs Map.Designer.cs Model1.Designer.cs Program.cs Properties\AssemblyInfo.cs Properties\Resources.Designer.cs Properties\Settings.Designer.cs "C:\Temp\.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs"
 
СБОЙ построения.
 
Затраченное время: 00:00:00.54
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========


что делать? подскажите

Добавлено через 1 час 13 минут
сорян, понял ))) поменял на public на void

Добавлено через 1 час 4 минуты
теперь выдает ошибку

C#
1
2
C:\Documents and Settings\User\мои документы\visual studio 2010\Projects\WindowsFormsApplication1\WindowsFormsApplication1\Main.cs(36,13): ошибка CS0103: Элемент "m_connection" не существует в текущем контексте.
C:\Documents and Settings\User\мои документы\visual studio 2010\Projects\WindowsFormsApplication1\WindowsFormsApplication1\Main.cs(42,17): ошибка CS0103: Элемент "m_connection" не существует в текущем контексте.

Может я не объявил ? ребят помогите разобраться.... руководствовался этим http://www.sql.ru/forum/931654/podkl...programmy-na-s
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.04.2015, 16:54
Ответы с готовыми решениями:

Как подключиться к базе данных Access
Здравствуйте. Помогите решить задачу с подключением БД, созданной в Access2007. Проблема в том, что...

Как подключиться к Базе данных денвера
Установил денвер. В phpMyAdmin создал базу данных Museum2. Есть код, чтобы вывести все записи из...

Как подключиться к базе данных Access на хостинге?
подключение_кБазеДанных = new OleDbConnection(@"Data Source =...

Как подключиться к базе данных MySQL на хостинге
Как подключиться к базе данных? База данных MySQL на хостинге?

Как подключиться к локальной базе данных .mdf?
Знаю, как подключиться к БД, которая создана в MS SQL. Но вот как подключиться к локальной БД я не...

6
kodv
1425 / 1098 / 344
Регистрация: 11.04.2011
Сообщений: 2,606
Завершенные тесты: 1
28.04.2015, 04:09 2
Цитата Сообщение от OTT Посмотреть сообщение
Может я не объявил ?
Компилятор, как правило, не ошибается. Если он пишет, что не объявили, значит, либо не объявили, либо объявили не там. Не знаю, из какого контекста выдран выш кусок кода, но куда-нибудь, допустим, перед public OracleConnection вставить строку
C#
1
private OracleConnection m_connection;
1
OTT
69 / 69 / 42
Регистрация: 30.09.2014
Сообщений: 342
Завершенные тесты: 4
30.04.2015, 11:08  [ТС] 3
Спасибо большое ))) Еще вопросик такой... Создавал БД с помощью Oracle Application Express ...

Подключается через :

C#
1
2
3
4
5
6
7
       
 
        String login = "ADMIN", port = "8080", host = "127.0.0.1", password = "Password", listener ="apex"; (верно ли указал listener????)
 
     m_connection = new Oracle.DataAccess.Client.OracleConnection("Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)" +
                "(HOST=" + host + ")(PORT=" + port + ")))" + "(CONNECT_DATA=(SERVER=DEDICATED)(SID=" + listener + ")));" +
                "User Id=" + login + ";Password=" + password + ";");

Подключаться не хочет.....((

не могли бы объяснить что именно тут имеется ввиду? Workspace тут не задается( то есть логин и пароль Админа должен быть?
0
Grossmeister
Модератор
3490 / 2528 / 440
Регистрация: 21.01.2011
Сообщений: 11,064
30.04.2015, 11:18 4
Цитата Сообщение от OTT Посмотреть сообщение
Создавал БД с помощью Oracle Application Express
А зачем ты создавал БД через APEX? APEX - это средство для создания приложений Oracle с Web-интерфейсом. С точки зрения БД - надстройка. Реально никаких Workspace в БД Oracle просто нет.
Поэтому если тебе именно APEX не нужен, то и забудь про него, а объекты в БД создавай родными средствами Oracle, например, с пом. SQL*Plus или SQL Developer (есть продукты и от сторонних компаний).
Кстати, что за версию Oracle ты пользуешь?
1
OTT
69 / 69 / 42
Регистрация: 30.09.2014
Сообщений: 342
Завершенные тесты: 4
30.04.2015, 11:35  [ТС] 5
Цитата Сообщение от Grossmeister Посмотреть сообщение
Кстати, что за версию Oracle ты пользуешь?
Поставил Oracle Database 11g Express Edition ... ни каких родных средств там не было ) поэтому и поставил Oracle Application Express

Добавлено через 10 минут
ка я понимаю я в дебри ушел(((( Что вы посоветуете чо бы создать простую БД и попробовать подключиться к ней ?
0
Grossmeister
Модератор
3490 / 2528 / 440
Регистрация: 21.01.2011
Сообщений: 11,064
30.04.2015, 12:05 6
Цитата Сообщение от OTT Посмотреть сообщение
ни каких родных средств там не было
Да уж прямо. SQL*Plus (sqlplus.exe) поставляется с любой версией и любой редакцией Oracle. А SQL Developer можно бесплатно скачать с сайта Oracle.

Цитата Сообщение от OTT Посмотреть сообщение
Что вы посоветуете чо бы создать простую БД и попробовать подключиться к ней ?
Согласно лицензии на XE допустима только одна БД, которая создается при инсталляции (так что она у тебя уже есть). Для проверки подключения можно попробовать подключиться из SQL*Plus
SQL
1
2
3
> sqlplus.exe /nolog
 
SQL> conn / AS sysdba
Только предварительно посмотри, запущен ли сервис OraceServiceXE (это экземпляр БД).
То, что создается в APEX под именем Workspace - это всего лишь схема внутри имеющейся БД. Которая создается в БД при создании нового пользователя через CREATE USER.
Ну и если хочешь работать с Oracle, рекомендую скачать доку с оф. сайта - без нее работать с Oracle тяжело, особенно когда ты при наличии локальной БД вынужден выполнять функции не только разработчика, но и администратора БД (DBA).
0
m0nax
1204 / 909 / 109
Регистрация: 12.01.2010
Сообщений: 1,893
Завершенные тесты: 3
30.04.2015, 12:48 7
Цитата Сообщение от OTT Посмотреть сообщение
ка я понимаю я в дебри ушел(((( Что вы посоветуете чо бы создать простую БД и попробовать подключиться к ней ?
забить на оракла, использовать СУБД от майкрософт
0
30.04.2015, 12:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.04.2015, 12:48

Как подключиться к базе данных, расположенной на хостинге timeweb
Здравствуйте. Подскажите пожалуйста с таким вопросом: Пытаюсь подключиться к базе данных,...

Как подключиться к базе данных, которая расположена на web-сервере
Подскажите плз, как на C# подключиться к базе данных, которая расположена на web-сервере, если...

Как подключиться к конкретной базе данных при работе с EF Code First
Я хочу подключиться к конкретной базе данных при работе с EF Code First. Как мне это сделать?


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru