Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
SpiritAT
3 / 3 / 0
Регистрация: 02.09.2011
Сообщений: 107
1

Не выполняется строка запроса к БД

23.03.2012, 11:22. Просмотров 603. Ответов 7
Метки нет (Все метки)

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
    class conect
    {
        private string sql,sql1,pth;
        private OleDbConnection conn;
        private OleDbCommand comand;
        private OleDbCommand command2;
        private OleDbCommand command3;
        public void main()
           { 
            sql = "SELECT  nom_fil,NOM_ORGAN,ogrn_bank,ogrn_pred,acc_pred,nom_dog,dat_dog FROM  idis WHERE name='ac'";
            sql1 = "SELECT  nom_fil,NOM_ORGAN,ogrn_bank,ogrn_pred,acc_pred,nom_dog,dat_dog FROM  idis WHERE name='ma'";
            pth = System.IO.Path.GetDirectoryName(Application.ExecutablePath);
            conn = new OleDbConnection(String.Format("Provider=VFPOLEDB.1;Data Source='{0}';Mode=Share Deny None;Collating Sequence=RUSSIAN", pth));
            comand = new OleDbCommand();
            command2 = new OleDbCommand(sql, conn);
            command3 = new OleDbCommand(sql1, conn);
           }    
        }
Помогите не как не могу получить данные command2 command3
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.03.2012, 11:22
Ответы с готовыми решениями:

Не выполняется параметрирование запроса
Всем привет! Уже полчаса бьюсь над проблемой, которая раньше никогда не возникала. string...

SQL Функция в качестве запроса не выполняется
До этого использовал только запросы в текстовой строке, которую отправлял на выполнение. Но мне...

Строка кода не выполняется
@for /f "usebackq delims=" %%i in ("file.txt") do ( >"%%i" ( echo @echo echo For /F ...

Почему вместо одного запроса выполняется два
public string Get(string url, CookieContainer cookieCollection=null, bool Redirect = true) {...

Строка не выполняется, хотя в if заходит
Добрый день, есть массив для крестиков - ноликов, и 2 игрока, они поочередно вводят значения 1=Х...

7
serg42
118 / 100 / 7
Регистрация: 14.02.2010
Сообщений: 263
23.03.2012, 11:56 2
Цитата Сообщение от SpiritAT Посмотреть сообщение
не как не могу получить данные
А в каком месте Вы их получаете? В коде ни получения данных, ни выполнения запроса нет.
0
SpiritAT
3 / 3 / 0
Регистрация: 02.09.2011
Сообщений: 107
23.03.2012, 12:02  [ТС] 3
Цитата Сообщение от serg42 Посмотреть сообщение
А в каком месте Вы их получаете? В коде ни получения данных, ни выполнения запроса нет.
хочу обротится
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
private void Saves_Click(object sender, EventArgs e)
        {
            
 
          conektik.conn.Open();
          conektik.comand.Connection = conektik.conn;
          if (tabControl1.SelectedTab == tabPage1)
          {
              conektik.comand.CommandText = "UPDATE   idis set  nom_fil='" + Feli.Text + "'" + " , " + "nom_organ ='" + Naimen_org.Text + "'" + "," + "ogrn_bank ='" + OGRN_Banka.Text + "'" + "," + "ogrn_pred ='" + Ogrn_Pred.Text + "'" + "," + "acc_pred ='" + Racchet.Text + "'" + "," + "nom_dog ='" + Nomer_dogovara_Banka.Text + "'" + "," + "dat_dog  ='" + Data_dogovora.Value.ToString("dd/MM/yyyy") + "'" + "WHERE name='ac'";
          }
          else
          {
              conektik.comand.CommandText = "UPDATE   idis set  nom_fil='" + Feli_Man.Text + "'" + " , " + "nom_organ ='" + Naimen_org_Man.Text + "'" + "," + "ogrn_bank ='" + OGRN_Banka_Man.Text + "'" + "," + "ogrn_pred ='" + Ogrn_Pred_Man.Text + "'" + "," + "acc_pred ='" + Racchet_Man.Text + "'" + "," + "nom_dog ='" + Nomer_dogovara_Banka_Man.Text + "'" + "," + "dat_dog  ='" + Data_dogovora_Man.Value.ToString("dd/MM/yyyy") + "'" + "WHERE name='ma'";
          }
          conektik.comand.ExecuteNonQuery();
 
          conektik.conn.Close();
           Close();
        }
conektik.conn.Open(); не видит Open
0
Learx
1046 / 853 / 194
Регистрация: 31.03.2010
Сообщений: 2,490
23.03.2012, 13:26 4
для получения данных используйте объект DataTable:
C#
1
2
DataTable dt = new DataTable();
dt.Load(command2.ExecuteReader);
conektik.conn.Open(); не видит Open
а где объявлен conektik? где ему дается ссылка на объект OleDbConnection?
0
SpiritAT
3 / 3 / 0
Регистрация: 02.09.2011
Сообщений: 107
23.03.2012, 14:33  [ТС] 5
conect это класс. я хочу из любого место в коде обратится к нему и взять из него OleDbCommand.
conect conektik вот откуда conektik
0
serg42
118 / 100 / 7
Регистрация: 14.02.2010
Сообщений: 263
23.03.2012, 15:03 6
Цитата Сообщение от SpiritAT Посмотреть сообщение
conektik.conn.Open(); не видит Open
Не может он его "не видеть". conektik.conn может быть не определен.
1
Learx
1046 / 853 / 194
Регистрация: 31.03.2010
Сообщений: 2,490
23.03.2012, 15:26 7
а выполнялся ли метод conectik.main() прежде чем обращаться к полю connectik.conn?


а вернее реализовать отдельный метод, который инициализирует поле conn по полученной строке подключения. а сам объект conn сделать приватным.
и отдельный метод, который получает команду sql и возвращает объект DataTable с данными или Binding (BindingSource) на него. и открытие/закрытие подключения делать внутри этого метода.
и отдельный метод который делает обновление данных своего ресурса.

то есть на каждую таблицу-выборку свой собственный такой класс.

И, как логическое завршение всего вышесказанного сделать клас- наследник List этих классов, который реализует подключение к БД, а сам класс - контролит данные и запросы к этим данным. это немного изменит класс, но это уже будет завершенная картина в духе ООП
1
_katon_
385 / 241 / 20
Регистрация: 03.10.2011
Сообщений: 1,003
23.03.2012, 15:37 8
1. модификатор private
C#
1
2
3
4
5
        private string sql,sql1,pth;
        private OleDbConnection conn;
        private OleDbCommand comand;
        private OleDbCommand command2;
        private OleDbCommand command3;
делает атрибуты закрытыми и недоступными для использования из других классов (conektik.conn находится за пределами видимости).
2. не надо использовать для хранения данных атрибуты... используйте свойства. А поскольку есть такая вещь как "синтаксический сахар", то объявление свойства сделать очень легко:
C#
1
public int ID { get; set; }
3. Никогда не называйте метод так: main, Main. Так как такое название очень похоже на точку входа, и визуально может быть воспринято как вход в программу.
4. Название метода должно отображать краткое содержание процесса внутри него протекающего, например SetConnection. Тогда при "чтении" класса будет отчетливо понятна его функциональность.

Я бы вам советовал прежде чем писать код смотреть стандартные решения и примеры на msdn (всегда так делаю), а если в принципе не представляете как реализовать ту или иную задачу.... ну тогда надо пробовать ее формулировать в словесную форму и наедятся, что кто-то не поленится и подскажет вам решение.
1
23.03.2012, 15:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.03.2012, 15:37

Не выполняется последняя строка кода
var n,m,k,i,j,a:integer; {i - кол-во выстрелов. j - то что нам...

При включение ноутбука выполняется командная строка и открывается хром с сайтом 2inf.net
Пробовал чистить реестр, куки но при запуске все равно тоже самое. Логи прикрепляю.

Непонятная строка запроса
GET /favicon.ico HTTP/1.1 Как это понять ?


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

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

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