Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.79/78: Рейтинг темы: голосов - 78, средняя оценка - 4.79
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301

Добавление столбца в таблицу БД

31.10.2010, 11:13. Показов 16791. Ответов 63
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе утро.
Подскажите пожалуйста как программно добавить столбец в таблицу БД?
C#
1
katalogPlanDataSet.Oborud2.Columns.Add();
Так не ругается но и не добавляет, видимо потому что надо задавать все свойства.

Добавлено через 1 час 23 минуты
Вот так сделал, не ругается:
C#
1
katalogPlanDataSet.Oborud2.Columns.Add("Столбец", System.Type.GetType("System.String"));
После первого нажатия ничего не происходит. Если нажимаю добавить второй раз, то вылезает ошибка что такой столбце уже существует. А как сделать чтобы он появлялся для работы с ним=)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
31.10.2010, 11:13
Ответы с готовыми решениями:

Добавление столбца в таблицу
Необходимо добавить столбец nalich в таблицу Sklad, если он не существует. При запуске выдаёт ошибку: "ошибочная конструкция SQL;...

Добавление нового столбца в таблицу БД
ну вообщем ситуация такая: есть база данных на интербэйзе и прога для нее написанная на дельфях....все работает нормально...но возникает...

Программное добавление столбца в таблицу
На форуме уже рассмотрена тема программного создания таблицы: procedure TForm5.Button1Click(Sender: TObject); begin ...

63
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
06.12.2010, 08:31
Студворк — интернет-сервис помощи студентам
Порядок работы с udl-файлом:
1) Создаем пустой .txt-файл
2) Переименовываем его в файл с расширением .udl
3) Запускаем
4) Выбираем поставщика данных
5) Вводим имя серевера, к которому нужно подключится (вкладка подключение)
6) Если сервер удаленный, то заполняем поля "пользователь" и "пароль" (для локальной БД необязательно)
7) Жмем "Проверить подключение". Если все нормально, работаем дальше. Если ошибка, значит неправильно выполнен пункт 5 или 6, либо проблемы с настройкой/работой сервера
8) Выбираем из списка нужную БД
9) При необходимости заполняем другие параметры подключения
10) Закрываем (кнопка "Ok")
11) Открываем наш .udl при помощи блокнота и видим там нужную строку подключения

Описание составлено для поставщика SQL Server, для других поставщиков начиная с 5 пункта могут быть некоторые отличия.
0
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301
12.12.2010, 18:22  [ТС]
Вот что у меня получилось.
Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=KatalogPlanata Source=PILOTERIST\SQLEXPRESS

Только ругается на слэш в Data Sourse. Что делать в таком случае?
Попробовал поставить в другую сторону наклон. Ругать перестал но все равно зависает на той же строке.
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
12.12.2010, 18:50
Попробуй использовать в проге
"Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=KatalogPlan; Data Source=PILOTERIST\SQLEXPRESS"

параметр Provider не требуется и из-за него могут быть проблемы
0
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301
12.12.2010, 19:19  [ТС]
Теперь вылетает на самой строке где прописан коннект. Текст ошибки:
An OLE DB Provider was not specified in the ConnectionString. An example would be, 'Provider=SQLOLEDB;'.
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
12.12.2010, 19:40
Ты пользуешься не теми классами.
Для работы с БД SQL нужны классы Sql... (SqlConnection, SqlCommand и т.д.), а не Oledb...
0
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301
12.12.2010, 20:08  [ТС]
А как их подключить подскажите? А то ругается если просто поставить SqlConnection=)
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
12.12.2010, 20:18
piloterist, нужно подключить (using) пространства имен, к которым эти кассы относятся
0
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301
12.12.2010, 20:33  [ТС]
Ех, все равно упорно зависает на одном и том же месте.
C#
1
2
3
4
5
6
            SqlConnection sqlCon = new SqlConnection("Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=KatalogPlan;Data Source=SQLEXPRESS");
            sqlCon.Open();
            SqlCommand dcom = sqlCon.CreateCommand();
            dcom.CommandText =   "ALTER TABLE dbo.Oborud2 ADD тест nchar(10) NULL";
            dcom.ExecuteNonQuery();
            sqlCon.Close();
На provider ругался пришлось убрать.
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
12.12.2010, 20:40
У тебя же изначально было "... Data Source=PILOTERIST\SQLEXPRESS". Через udl подключение срабатывает?
0
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301
12.12.2010, 20:54  [ТС]
Да через udl пишет успешно тест прошел. Но через слэш не дает записать PILOTERIST\SQLEXPRESS пишет ошибку при компиляции "Unrecognized escape sequence"
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
12.12.2010, 21:01
SqlConnection sqlCon = new SqlConnection(@"Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=KatalogPlan; Data Source=PILOTERIST\SQLEXPRESS");
или SqlConnection sqlCon = new SqlConnection("Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=KatalogPlan; Data Source=PILOTERIST\\SQLEXPRESS");
1
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301
12.12.2010, 21:08  [ТС]
УРА прошло. Теперь вылетело на
C#
1
            dcom.ExecuteNonQuery();
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
12.12.2010, 21:30
piloterist, неправильно составлен запрос (скорее всего)
1
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301
12.12.2010, 21:51  [ТС]
Чето я туплю. Столбец появился в базе данных, просто он не отображается.
Есть идеи как это исправить?)
В DataGridView как было 3 столбца так 3 и осталось, хотя в таблице их уже пять.
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
12.12.2010, 21:56
где не отображается?
0
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301
12.12.2010, 22:10  [ТС]
В программе в DataGridView к которой подключена таблица БД. Видимо тоже надо както обновлять. Может DataSet как то обновлять
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
12.12.2010, 22:13
покажи как заполняешь DataGridView
0
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301
12.12.2010, 22:25  [ТС]
Всмысле как заполняю? Никак не заполняю. Я к нему подключил таблицу БД, и при добавлении новой строки запускаю обновление.
C#
1
   oborud2TableAdapter.Update(katalogPlanDataSet.Oborud2);
Но столбец таким методом не добавляется =)
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
12.12.2010, 22:27
Цитата Сообщение от piloterist Посмотреть сообщение
Никак не заполняю.
т.е. подключение создавалось автоматом?
покажи мне метод Form_Load
0
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301
12.12.2010, 22:39  [ТС]
Угу автоматом.
C#
1
2
3
4
5
6
       private void Form3_Load(object sender, EventArgs e)
        {
            // TODO: This line of code loads data into the 'katalogPlanDataSet.Oborud2' table. You can move, or remove it, as needed.
            this.oborud2TableAdapter.Fill(this.katalogPlanDataSet.Oborud2);
            dataGridView1.AllowUserToAddRows = false;
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.12.2010, 22:39

Добавление нового столбца в таблицу
Adoquery1.close; Adoquery1.sql; Adoquery1.sql.add(alter table KTZ add column'+quotedstr(edit1.text)+'string'); Adoquery1.execsql; ...

Добавление нового столбца в таблицу БД
Есть БД Access 2007. Никак не могу найти добавления нового столбца в таблицу,т.е при нажатии на кнопочку можно было задать имя столбца и...

Запрос на добавление столбца в таблицу
вот такой запрос нужно сделать,по поводу добавления строки я разобрался а вот столбец никак не могу вывести,подскажите как

Программное добавление столбца в таблицу
Возможно ли с помощью программного кода добавить столбец в таблицу?Если возможно, то как?

Добавление столбца в таблицу с изменяющейся структурой
Добрый день, уважаемые форумчане. Подскажите пожалуйста по следующему вопросу... Есть табличка, которая состоит из двух частей,...


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

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал. Оно само - говорит. Кто слышит тот слышит.
Оказывается, Unreal Engine позволяет качество на порядки выше, чем было в Lineedge
Etyuhibosecyu 05.07.2026
Жаль, конечно, что я не узнал об этом, пока Lineedge существовала, а то бы Noname2331 написал, что волки превращаются в пиксельную кашу, а я бы его попросил скачать какую-нибудь бриллиантовую или Pro. . .
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась. Первый вариант. . .
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2. Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет. Но обычно это 50 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru