Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
3 / 3 / 4
Регистрация: 21.07.2015
Сообщений: 51

C# SQLite ошибка при запросе

10.04.2016, 09:48. Показов 1177. Ответов 0

Студворк — интернет-сервис помощи студентам
Здравствуйте.
При выполнении скрипта запроса Unity выдает ошибку:
Кликните здесь для просмотра всего текста
SqliteException: Abort due to constraint violation
NOT NULL constraint failed: keyPointList.id
Mono.Data.Sqlite.SQLite3.Reset (Mono.Data.Sqlite.SqliteStatement stmt)
Mono.Data.Sqlite.SQLite3.Step (Mono.Data.Sqlite.SqliteStatement stmt)
Mono.Data.Sqlite.SqliteDataReader.NextRe sult ()
(wrapper remoting-invoke-with-check) Mono.Data.Sqlite.SqliteDataReader:NextRe sult ()
Mono.Data.Sqlite.SqliteDataReader..ctor (Mono.Data.Sqlite.SqliteCommand cmd, CommandBehavior behave)
(wrapper remoting-invoke-with-check) Mono.Data.Sqlite.SqliteDataReader:.ctor (Mono.Data.Sqlite.SqliteCommand,System.D ata.CommandBehavior)
Mono.Data.Sqlite.SqliteCommand.ExecuteRe ader (CommandBehavior behavior)
Mono.Data.Sqlite.SqliteCommand.ExecuteNo nQuery ()
(wrapper remoting-invoke-with-check) Mono.Data.Sqlite.SqliteCommand:ExecuteNo nQuery ()
SQL.RegisterKeyPoint (Vector3 point, Boolean isJunction) (at Assets/SQL/SQL.cs:52)
roadBuild.RegisterKeyPoint (Vector3 pos, Boolean isJunction) (at Assets/Road/roadBuild.cs:40)
roadBuild.CreateKeyPoint () (at Assets/Road/roadBuild.cs:45)
roadBuild.Update () (at Assets/Road/roadBuild.cs:26)

Псевдокод:
Кликните здесь для просмотра всего текста
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
26
27
28
29
30
        conn.Open ();
 
        string command = "INSERT INTO keyPointList (x,y,z,isJunction) VALUES (@x,@y,@z,@isJunction);";
        SqliteCommand cmd = new SqliteCommand (command, conn);
 
        SqliteParameter param = new SqliteParameter ();
        param.ParameterName = "@x";
        param.DbType = DbType.String;
        param.Value = point.x.ToString ();
        cmd.Parameters.Add (param);
 
        param = new SqliteParameter ();
        param.ParameterName = "@y";
        param.DbType = DbType.String;
        param.Value = point.y.ToString ();
        cmd.Parameters.Add (param);
 
        param = new SqliteParameter ();
        param.ParameterName = "@z";
        param.DbType = DbType.String;
        param.Value = point.z.ToString ();
        cmd.Parameters.Add (param);
 
        param = new SqliteParameter ();
        param.ParameterName = "@isJunction";
        param.DbType = DbType.Int16;
        param.Value = isJunction ? 1 : 0;
        cmd.Parameters.Add (param);
 
        cmd.ExecuteNonQuery (); //тут возникает ошибка

Но при этом, аналогичный запрос через браузер выполняется:
SQL
1
INSERT INTO keyPointList(x,y,z,isJunction) VALUES ("ad","asdf","11",0);
Вот описание самой таблицы:
SQL
1
2
3
4
5
6
7
CREATE TABLE `keyPointList` (
    `id`    INTEGER PRIMARY KEY AUTOINCREMENT,
    `x` TEXT NOT NULL,
    `y` TEXT NOT NULL,
    `z` TEXT NOT NULL,
    `isJunction`    INTEGER NOT NULL
);
Никак не пойму в чём же ошибка, помогите пожалуйста.

Добавлено через 11 часов 44 минуты
Вобщем, пересоздал БД и проблема решилась.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.04.2016, 09:48
Ответы с готовыми решениями:

Sqlite The database file is locked - заблокирована база при правильном запросе
Доброго времени суток господа. У меня не вероятная проблема. Не так давно столкнулся с таким, что блочится база данных, но в коде была...

Ошибка при использовании MATCH в запросе к SQLite
Пытаюсь сделать поиск: "SELECT * FROM WHERE MATCH 'Жигул'" Выдает ошибку Добавлено через 20 минут Либо подскажите как...

SQLite - постоянное подключение к базе или каждый раз при запросе?
Есть класс-синглтон работающий с SQLite, есть методы возвращающие данные из базы в нужном формате. Вопрос - во всех примерах, что мне...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.04.2016, 09:48
Помогаю со студенческими работами здесь

Странно работает метод StartsWith при запросе к БД SQLite c Entity Framework
Всем привет, помогите кто может. Есть проект c# windows form с entity framework code first. После смены бд Mysql на SQLite начались...

Странно работает метод StartsWith при запросе к БД SQLite c Entity Framework Code First
Добрый день, подскажите пожалуйста: Имеется проект C# приложение windows form с entity framework code first на борту. С начала entity...

Ошибка при подключение файла БД SQLite при сборке в Maven в Intellij IDEA
Доброго времени суток, у меня возникла проблема с доступом к файлу БД SQLite после сборки Мавеном в Intellij IDEA. Перерыл кучу всего на...

Ошибка при создании SQLite
При запуске приложения вылетает ошибка: 03-09 11:04:42.436 1556-1556/ru.scratty.myrec E/SQLiteLog﹕ (1) table "records"...

Ошибка при подключение БД SQlite
Не удаётся добавит библиотеку SQlite.Interpop


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru