Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
Есть ХП на MSSQLServer следующего вида Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. в проге есть TADOStoredProc которая выдает результат в грид, но соответственно при добавлении новой строки в TDBGrid вылетает ошибка, чего делать то???Писать триггер на Insert???Если да то как он примерно выглядеть то должен??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2002, 10:12 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
Вот тебе пример моей ХП : CREATE PROCEDURE dbo.PROCAddAuthUser @UserName varchar(25), @UserPasswd varchar(25), @UserControl varchar(25), @ERR int output AS BEGIN tran AddAuthUser /*начало транзакции*/ /* затем какие-ио действия*/ Insert into AuthUser(UserName, UserPasswd, UserControl) Values (@UserName, @UserPasswd, @UserControl) if(@@error!=0) begin /*а вот здесь у меня проверка на ошибки. Это не обязательно!*/ rollback tran AddAuthUser select @ERR=1 end else begin select @ERR=0 commit tran AddAuthUser end GO ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2002, 10:17 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
Не в том дело моя ХП свою работу длелает, но по коду же понятно что в грид приходит одно поле из таблицы Company через INNER JOIN, вопрос в том что надо сделать чтобы при добавлении новой строки в гриде проходило нормально е добавление в БД, то есть происходил поиск Company_id В таблице Company и вставлялся в талицу ZayaMTO ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2002, 11:24 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
К сожалению Вы не указали какая именно ошибка возникает. Возможно Вам помогут вот эти статьи: http://www.delphikingdom.com/helloworld/ado02.htm http://www.delphikingdom.com/helloworld/ado03.htm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2002, 11:46 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
EOleException with message '[Microsoft][ODBC SQL Server Driver][SQL Server]'Cannot insert the value NULL into column 'Region_id', table 'Base.dbo.Company'; column does not allow nulls. INSERT fails'. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2002, 12:37 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
Почитайте http://www.delphikingdom.com/helloworld/ado03.htm Судя по всему вам необходимо установить свойство 'Unique Table' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2002, 15:08 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
В примере, который содержится в вопросе, хранимая процедура вообще не по делу используется. В таких случаях нужно VIEW использовать. Там же нет ни параметров, ни логики - один SELECT с JOIN-ом. Используйте VIEW. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2002, 15:22 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
И добавлять строку нужно через отдельную хранимую процедуру, и не через DBGrid. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2002, 18:29 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
Смысла они не меняют, только код загромождают ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2002, 18:49 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
Открой таблицу Company в Enterprise Manager (Design Table) и поставь флажок для поля region_id Allow nulls ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2002, 10:36 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
Аха, и все компании у меня будут в нулевом регионе, неа не выход, совсем не выход ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2002, 10:08 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
Попробуйте поиграться с @@IDENTITY и IDENT_CURRENT('TableName') ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2002, 10:28 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
Смысла они не меняют, только код загромождают Кто? Что? Аха, и все компании у меня будут в нулевом регионе, неа не выход, совсем не выход Так Вы хотите ничего ручками не делать, а чтобы "все само куда надо вставлялось"? Это к доктору. Кодду ) Программы то иногда писать путево надо :) Кто же вместо Вас строку в таблицу добавит? Дядя Билли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2002, 11:26 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
Обидеть никого не хотел, нервы, однако :( Да и вопросы...... :() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2002, 12:27 |
|
||
|
TADOStoredProc и Insert
|
|||
|---|---|---|---|
|
#18+
Да я не обидчивый Смысла они не меняют, только код загромождают Кто? Что? Параметры хранимой процедуры я вырезал и написал сюда только то что возвращает РекордСет. Так Вы хотите ничего ручками не делать, а чтобы "все само куда надо вставлялось"? Это к доктору. Кодду ) Программы то иногда писать путево надо :) Кто же вместо Вас строку в таблицу добавит? Дядя Билли? Просто показалось несколько странным, что Грид позволяя редактировать не в состоянии распознать куда и чего записывать. Вот и спросил. По моему опыту документированность у Борландовских продуктов оставляет желать.....вообще желать документированности, не говоря уж про лучшую документированность. А написать то ручками не проблема.=))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2002, 19:10 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=32064861&tid=2119690]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
79ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 268ms |
| total: | 441ms |

| 0 / 0 |
