Member 12509819 Ответов: 1

Как создать таблицу с классом datatable


Привет друзья
Я хотел создать таблицу с классом Datatable и использовал этот код:


DataTable dt = new DataTable("tbl1");
            DataColumn column1 = new System.Data.DataColumn();
            column1.ColumnName = "First";
            column1.DataType = typeof(int);
            column1.DefaultValue = 0;
            column1.Unique = true;
            column1.AllowDBNull = false;
            dt.Columns.Add();
            DataSet se= new System.Data.DataSet();
            se.Tables.Add(dt);


Но это не работает.
Как я могу создать таблицу в базе данных с классом Datatable?

пожалуйста, веди меня!
спасибо

Что я уже пробовал:

.................................................................

1 Ответов

Рейтинг:
1

OriginalGriff

Ваш код работает: он просто мало что делает!
В частности, он ничего не отображает, так что вы не можете видеть, что он сработал.
Используйте DataTabe в качестве источника данных для элемента управления с поддержкой данных, такого как DatGirdView или аналогичного, и вы увидите.

И это будет работать лучше, если вы добавите некоторые данные!

column1.AllowDBNull = false;
dt.Columns.Add();
dt.Rows.Add(111);
dt.Rows.Add(112);
dt.Rows.Add(113);
DataSet se = new System.Data.DataSet();
se.Tables.Add(dt);
myDataGridView.DataSource = dt;


Member 12509819

Спасибо за ваш ответ.
Я добавил выше строку, но она не добавила никакой таблицы в базу данных.
Моя таблица не существует,я хочу добавить ее с помощью класса datatable.
Конечно, я сделал это с помощью класса table, но я не мог определить первичный ключ с помощью класса table.
Есть ли еще способ?

OriginalGriff

Если вы хотите создать таблицы базы данных, то вы *должны сказать нам об этом*!
Помните, что мы не можем видеть ваш экран, получить доступ к вашему жесткому диску или прочитать ваши мысли - мы получаем только * точно* то, что вы печатаете для работы.
Создание таблиц из datatable необычно - это не "нормальная" вещь для работы с БД, поскольку таблицы, как правило, тонко обработаны и хорошо продуманы (неправильный дизайн может сделать ваши приложения, использующие его, действительно трудными для кодирования и обслуживания).
Но... это возможно:
http://stackoverflow.com/questions/1348712/creating-a-sql-server-table-from-a-c-sharp-datatable

Однако. То, что вы можете что-то сделать, не означает, что вы должны это делать. На твоем месте я бы долго и упорно думал о том, что у тебя получится и для чего ты собираешься это использовать, прежде чем идти по этому пути.

Member 12509819

Еще раз спасибо! - задал я вопрос.
Но я думаю, что ваш ответ "только потому, что вы можете что-то сделать, не означает, что вы должны это делать. Я бы долго и упорно думал о том, что вы собираетесь в конечном итоге получить и для чего вы собираетесь использовать его, прежде чем идти по этому пути, если бы я был вами", не имеет ничего общего с предметом!

OriginalGriff

Вы бы удивились!
Если вы делаете что - то определенно странное - а вы действительно делаете, - то это очень часто признак того, что вы делаете что-то очень, очень неправильное и идете по неправильному пути. Отсюда и Комментарий "Просто потому, что вы *cn* что-то делаете...".
Помните, мы не знаем, почему вы пытаетесь сделать это - поэтому мы не можем сказать: "это глупо, сделайте это так, и ваша жизнь станет намного проще". Все, что мы можем сделать, это сказать: "подумайте, прежде чем делать это - это не то, что вам, вероятно, нужно делать!"