|
|
|
Insert и Null
|
|||
|---|---|---|---|
|
#18+
Как добавить строку в таблицу, где параметры принимают какие-то значение так и могут быть null? INSERT INTO Register (Acc_ID, Tr_Date, Notes, Tr_Sum, TT_ID, Add_ID, Bud_ID, Part_ID, Obj_ID, Cost_ID) VALUES (@Acc_ID, @Tr_date, @Notes, @Tr_Sum, @TT_ID, @Add_ID, @Bud_ID, @Part_ID, @Obj_ID, @Cos_ID) Где @Add_ID может быть например единицей а чаще null ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2002, 15:19:13 |
|
||
|
Insert и Null
|
|||
|---|---|---|---|
|
#18+
А что значит "как" ? Предложенный вами код разве не добавляет запись в таблицу именно с теми значениями, которые занесены в е перменные ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2002, 15:26:57 |
|
||
|
Insert и Null
|
|||
|---|---|---|---|
|
#18+
а в чем проблема? возникает ошибка? может быть на столюце установлено значение NOT NULL? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2002, 15:33:44 |
|
||
|
Insert и Null
|
|||
|---|---|---|---|
|
#18+
OK по логике если мы хотим, чтобы колонка Add_ID для новой строки принимала значение null (а ей можно), мы просто не подставляем значение праметра @Add_ID. Дудки. В этом случае SQL выдает ошибку внешнего ключа связи этого аттрибута и ессно ничего не добавляет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2002, 15:38:53 |
|
||
|
Insert и Null
|
|||
|---|---|---|---|
|
#18+
может есть какой-нить DEFAULT или CONSTRAINT на это поле? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2002, 15:42:45 |
|
||
|
Insert и Null
|
|||
|---|---|---|---|
|
#18+
нет поле как поле: int(4), vj;может содержать Null; внешний ключ этой таблицы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2002, 15:55:05 |
|
||
|
Insert и Null
|
|||
|---|---|---|---|
|
#18+
просто не подставляем значение праметра @Add_ID Можете привести полный текст скрипта ? Что у вас там - процедура ? Дудки. В этом случае SQL выдает ошибку внешнего ключа связи этого аттрибута и ессно ничего не добавляет. Значит все-таки в поле вставляется значение отличное от NULL. Либо Default значение либо все-таки из параметра. Лучше всего об этом "расскажет" Profiler ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2002, 17:32:23 |
|
||
|
Insert и Null
|
|||
|---|---|---|---|
|
#18+
День добрый! 1. Одно из значений первичного ключа NULL ? Есть такое? 2. Может, через HTML -формы заполняете? Там, если поле пустое, это не значит NULL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2002, 17:35:04 |
|
||
|
Insert и Null
|
|||
|---|---|---|---|
|
#18+
Попытаюсь объяснить максимально подробно, возможно, я в коде чего-то напутал. Итак есть некая форма добавляющая записи в основную таблицу, которя содержит массу комбобоксов - туда значение подставляются из соответсвующих справочников. При этом если значение кого-то из них не выбирается, то оно неважно и в таблице должно прописаться null. Код на добавление (VB.Net): Tr_Acc.Open() Try SqlInsertCommand1.Parameters("@Acc_ID").Value = Register.accid.SelectedValue SqlInsertCommand1.Parameters("@Tr_Date").Value = Register.trdate.Value SqlInsertCommand1.Parameters("@Notes").Value = TextBox2.Text SqlInsertCommand1.Parameters("@Tr_sum").Value = TextBox1.Text SqlInsertCommand1.Parameters("@TT_ID").Value = ComboBox7.SelectedValue SqlInsertCommand1.Parameters("@Add_ID").Value = ComboBox1.SelectedValue SqlInsertCommand1.Parameters("@Bud_ID").Value = ComboBox6.SelectedValue SqlInsertCommand1.Parameters("@Part_ID").Value = ComboBox2.SelectedValue SqlInsertCommand1.Parameters("@Obj_ID").Value = ComboBox3.SelectedValue SqlInsertCommand1.Parameters("@Cost_ID").Value = ComboBox6.SelectedValue SqlInsertCommand1.ExecuteNonQuery() Catch Dim ec As Exception MsgBox("Проверьте, возможно в графе сумма вы ввели точку, вместо запятой!") Finally Tr_Acc.Close() End Try строка комманды Sqlinsertcommand1: Код: plaintext 1. 2. 3. При попытки добавления, если хотя бы одно значение из комбобокса не выбрано SQL ругается, причем даже не в состоянии выявить ошибку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2002, 08:18:33 |
|
||
|
Insert и Null
|
|||
|---|---|---|---|
|
#18+
незнаю как в VB.Net, но в Delphi , если значение ComboBox не выбрано , то стоит -1 (минус один) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2002, 09:13:21 |
|
||
|
Insert и Null
|
|||
|---|---|---|---|
|
#18+
Смотрим MSDN: ComboBox.SelectedItem Property Property Value The object that is the currently selected item or a null reference ( Nothing in Visual Basic) if there is no currently selected item. А чтобы передать в параметре команде значение Null, ему и нужно присвоить Null. В VB значения Null и Nothing не эквивалентны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2002, 09:19:05 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32058424&tid=1819580]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
90ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 393ms |

| 0 / 0 |
