Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Запросы на выборку

19K
16 июня 2009 года
vitalya777
37 / / 04.03.2008
Извините,но я никогда не работал с запросами в С#,поэтому,если можно,напишите самую простую реализацию запроса на выборку данных(текст всего модуля)
Заранее благодарен!!!
Моя база данных PK.mdf, а во всех примерах почему-то базы с расширением .mdb

я делал так:
OleDbConnection con =
new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=PK.mdf");

string sql = @"insert into PP(select fields Tovar_id, Nazva, Count, Cina*1.2 from Zak_post)";
con.Open();
OleDbCommand cmd = new OleDbCommand(sql, con);

con.Close();
Может увидите,что не так, выкидывает ошибку о том,что файл уже используется...
35K
16 июня 2009 года
Biff
8 / / 11.02.2008
а у тебя в этот момент случайно Access не был запущен?
19K
16 июня 2009 года
vitalya777
37 / / 04.03.2008
не был, у меня база,созданная в самой студии
1
16 июня 2009 года
kot_
7.3K / / 20.01.2000
Цитата: vitalya777
Извините,но я никогда не работал с запросами в С#,поэтому,если можно,напишите самую простую реализацию запроса на выборку данных(текст всего модуля)
Заранее благодарен!!!
Моя база данных PK.mdf, а во всех примерах почему-то базы с расширением .mdb

я делал так:
OleDbConnection con =
new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=PK.mdf");

string sql = @"insert into PP(select fields Tovar_id, Nazva, Count, Cina*1.2 from Zak_post)";
con.Open();
OleDbCommand cmd = new OleDbCommand(sql, con);

con.Close();
Может увидите,что не так, выкидывает ошибку о том,что файл уже используется...


в студии можно создать базу для SQL-сервера (что собственно вы и сделали - поэтому и ошибка - он ее "держит"). Зайдите в акцесс создайте базу, а затем к ней обращайтесь.
З.Ы. Таблицу создать не забудьте. В целом код должен выглядеть примерно так :

Код:
String sql = "Insert into contacts(people_id,contact_type_id,contact_fields) values ( :people_id,:contact_type_id,:contac_fields)";
 String source = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\base\\dbdddp.mdb;Persist Security Info=True";
                OleDbConnection conn = new OleDbConnection(source);
            conn.Open();
            OleDbCommand cmd = new OleDbCommand(sql, conn);
                cmd.Prepare();
                cmd.Parameters.Add("people_id", OleDbType.Integer);
                cmd.Parameters.Add("contact_type_id", OleDbType.Integer);
                cmd.Parameters.Add("contact_fields", OleDbType.VarChar);
                cmd.Parameters[0].Value = Convert.ToInt32(PeopleId);
                cmd.Parameters[1].Value = fm.cbContactType.SelectedValue;
                cmd.Parameters[2].Value = fm.tbContactFields.Text;
                cmd.ExecuteNonQuery();
1
16 июня 2009 года
kot_
7.3K / / 20.01.2000
кстати или меня плющит или афтора:
Цитата:

Извините,но я никогда не работал с запросами в С#,поэтому,если можно,напишите самую простую реализацию запроса на выборку данных(текст всего модуля)



Цитата:

я делал так:

string sql = @"insert into PP(select fields Tovar_id, Nazva, Count, Cina*1.2 from Zak_post)";


может книжечки там всякие почитать прежде чем на форуме отписываться? :)

11
16 июня 2009 года
oxotnik333
2.9K / / 03.08.2007
багобезопастнее через using
Код:
String source = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\base\\dbdddp.mdb;Persist Security Info=True";
using(OleDbConnection conn = new OleDbConnection(source))
{
    conn.Open();
    String sql = "Insert into contacts(people_id,contact_type_id,contact_fields) values ( :people_id,:contact_type_id,:contac_fields)";
    using (OleDbCommand cmd = new OleDbCommand(sql, conn))
    {
        cmd.Prepare();
        cmd.Parameters.Add("people_id", OleDbType.Integer);
        cmd.Parameters.Add("contact_type_id", OleDbType.Integer);
        cmd.Parameters.Add("contact_fields", OleDbType.VarChar);
        cmd.Parameters[0].Value = Convert.ToInt32(PeopleId);
        cmd.Parameters[1].Value = fm.cbContactType.SelectedValue;
        cmd.Parameters[2].Value = fm.tbContactFields.Text;
        cmd.ExecuteNonQuery();
    }
}
19K
16 июня 2009 года
vitalya777
37 / / 04.03.2008
Цитата: kot_
в студии можно создать базу для SQL-сервера (что собственно вы и сделали - поэтому и ошибка - он ее "держит"). Зайдите в акцесс создайте базу, а затем к ней обращайтесь.
З.Ы. Таблицу создать не забудьте.


Ну а к моей базе можна же как-то обращатся через запросы?
Просто нужно переделывать всю программу, а это может занять целую неделю!!!А мне срочно надо на завтра,выручайте!!!

11
16 июня 2009 года
oxotnik333
2.9K / / 03.08.2007
Цитата: vitalya777
Ну а к моей базе можна же как-то обращатся через запросы?
Просто нужно переделывать всю программу, а это может занять целую неделю!!!


зачем программу то переделывать? создай БЛ аксессовскую, и измени в строке подключения имя это БД... работы то на 2 минуты

1
16 июня 2009 года
kot_
7.3K / / 20.01.2000
Цитата: vitalya777
Ну а к моей базе можна же как-то обращатся через запросы?
Просто нужно переделывать всю программу, а это может занять целую неделю!!!


Не понятно зачем переделывать программу - создать базу и автозаменой пройтись по коду - ровно пять минут времени.
Конечно можно и к серверу обращаться.

19K
16 июня 2009 года
vitalya777
37 / / 04.03.2008
Цитата: oxotnik333
зачем программу то переделывать? создай БЛ аксессовскую, и измени в строке подключения имя это БД... работы то на 2 минуты


Но я обращаюсь к своей базе через DataSet, а в нём моя старая база

11
16 июня 2009 года
oxotnik333
2.9K / / 03.08.2007
Цитата: vitalya777
Но я обращаюсь к своей базе через DataSet, а в нём моя старая база


а в этом датасете есть строка подключения
меняешь ее - и подключаешься к другой базе

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог