Форум программистов, компьютерный форум, киберфорум
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 05.12.2012
Сообщений: 7
1

По записанным в БД SQL Server точкам не строится полигон

05.12.2012, 14:43. Показов 1226. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, возникла проблема при записи в базу данных.

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
if (checkBox1.Checked)
            {
                Pts.Add(new Point(e.X, e.Y));
                
                              
                if (Pts.Count > 3)
                {
 
                    label1.Text = "";
                    SqlConnection connection1 = new SqlConnection
                                     (
                                     @"Data Source=SCCM3;Initial Catalog=Northwind;Integrated Security=True;"
                                     );
                    connection1.Open();
 
                    string sql2 = "INSERT INTO [Northwind].[dbo].[Room_Coordinates] (ID, Coordinates1, Coordinates2, Coordinates3, Coordinates4)";
                    SqlCommand command2 = new SqlCommand(sql2, connection1);
 
                    command2.Parameters.AddWithValue("@Coordinates1", Pts[0]);
                    command2.Parameters.AddWithValue("@Coordinates2", Pts[1]);
                    command2.Parameters.AddWithValue("@Coordinates3", Pts[2]);
                    command2.Parameters.AddWithValue("@Coordinates4", Pts[3]);
                    command2.ExecuteNonQuery();
 
                    connection1.Close();

После запуска программы и выбора 4 точек, появляется ошибка:
"No mapping exists from object type System.Drawing.Point to a known managed provider native type."

А программа должна записать эти точки в базу и нарисовать полигон. Без записи в базу все делается нормально. Чтение осуществляется нормально.
Pts объявлен в виде списка.

Заранее спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.12.2012, 14:43
Ответы с готовыми решениями:

Неправильно строится полигон
Помогите, пожалуйста. Почему неправильно изображается полигон? По заданию надо изобразить...

Построение графика по известным точкам записанным в ListBox
Здравствуйте, форумчане! Подскажите, пожалуйста, как построить график по известным точкам...

Нарисовать полигон по заданным точкам в MASM
Всем доьрого времени суток. Друзь, как мне на асемблере нарисовать Polygon допустим по 10-ти...

Как нарисовать фигуру через полигон по точкам
Вот мой проект, объясните теперь мне пожалуйста: 1/Как нарисовать фигуру через полигон по...

6
Заблокирован
05.12.2012, 16:01 2
"No mapping exists from object type System.Drawing.Point to a known managed provider native type." А что тебе тут не ясно?
ты пытаешься записать объект System.Drawing.Point в Бд SQL Server, а его аналога там нет. Что тут может быть не понятно?

Добавлено через 3 минуты
Какой тип в БД у поля Coordinates1?
0
0 / 0 / 0
Регистрация: 05.12.2012
Сообщений: 7
05.12.2012, 17:39  [ТС] 3
Символьный тип.
Разве нельзя координаты записать в текстовое поле? Просто с таким не сталкивался.
Спасибо за ответ.
0
Заблокирован
05.12.2012, 17:53 4
C#
1
command2.Parameters.AddWithValue("@Coordinates1", Pts[0].ToString()) //{X=5, Y=6} - это пример, что будет записано в БД  ;
Добавлено через 3 минуты
Короче строку нужно передать в качестве значения параметра, а какую - это Вам решать.

Добавлено через 1 минуту
и у Вас запрос неправильно сделан.

Добавлено через 1 минуту
Если ID - добавляется в запись автоматически:
SQL
1
INSERT INTO [Northwind].[dbo].[Room_Coordinates] VALUES (@Coordinates1, @Coordinates2, @Coordinates3, @Coordinates4)
Добавлено через 2 минуты
http://www.w3schools.com/sql/sql_insert.asp
1
0 / 0 / 0
Регистрация: 05.12.2012
Сообщений: 7
05.12.2012, 18:12  [ТС] 5
Спасибо. А по поводу запроса, да, ID автоматически и его не надо.
Но там другие есть поля, поэтому указывал какие необходимо, после названия таблицы.
Еще раз спасибо.
0
Заблокирован
05.12.2012, 18:38 6
но это
Цитата Сообщение от UnfoRGiveN89 Посмотреть сообщение
Но там другие есть поля, поэтому указывал какие необходимо, после названия таблицы
но это не отменяет вот этой строки
T-SQL
1
VALUES (@Coordinates1, @Coordinates2, @Coordinates3, @Coordinates4)
0
0 / 0 / 0
Регистрация: 05.12.2012
Сообщений: 7
05.12.2012, 23:08  [ТС] 7
Да, я не прав, я ее как раз удалил перед вставкой кода сюда, забыл вернуть обратно.
Т.к. вместе с этой строчкой проверял работу с базой, заполняя простыми значениями.
0
05.12.2012, 23:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.12.2012, 23:08
Помогаю со студенческими работами здесь

Можно ли как-то нарисовать полигон по 3-м точкам и закрасить его
Можно ли как-то нарисовать полигон по 3-м точкам и закрасить его ? Просто мне нужно нарисовать...

[Microsoft][ODBC SQL Server Driver][SQL Server]Login failed- User: Reason: Not defined as a valid user of a trusted SQL Server connection
Login failed- User: Reason: Not defined as a valid user of a trusted SQL Server connection Вот...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru